KUKA System Technology
KUKA.UserTech 3.2 For KUKA System Software 8.2 and 8.3
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
KUKA Roboter GmbH
KUKA.UserTech 3.2
© Copyright 2013 KUKA Roboter GmbH Zugspitzstraße 140 D-86165 Augsburg Germany This documentation or excerpts therefrom may not be reproduced or disclosed to third parties without the express permission of KUKA Roboter GmbH. Other functions not described in this documentat ion may be operable in the controller. Th e user has no claims to these functions, however, in the case of a replacement or service work. We have checked the content of this documentation for conformity with the hardware and software described. Nevertheless, discrepancies cannot be precluded, for which reason we are not able to guarantee total conformity. The information in this documentation is checked on a regular basis, however, and necessary corrections will be incorporated in the subsequent edition. Subject to technical alterations without an effect on the function. Translation of the original documentation KIM-PS5-DOC
Publication: Bookstructure: Version:
2 / 81
Pub KST UserTech 3.2 (PDF) en KST UserTech 3.2 V1.1 KST UserTech 3.2 V1 en (PDF)
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
KUKA.UserTech 3.2
© Copyright 2013 KUKA Roboter GmbH Zugspitzstraße 140 D-86165 Augsburg Germany This documentation or excerpts therefrom may not be reproduced or disclosed to third parties without the express permission of KUKA Roboter GmbH. Other functions not described in this documentat ion may be operable in the controller. Th e user has no claims to these functions, however, in the case of a replacement or service work. We have checked the content of this documentation for conformity with the hardware and software described. Nevertheless, discrepancies cannot be precluded, for which reason we are not able to guarantee total conformity. The information in this documentation is checked on a regular basis, however, and necessary corrections will be incorporated in the subsequent edition. Subject to technical alterations without an effect on the function. Translation of the original documentation KIM-PS5-DOC
Publication: Bookstructure: Version:
2 / 81
Pub KST UserTech 3.2 (PDF) en KST UserTech 3.2 V1.1 KST UserTech 3.2 V1 en (PDF)
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
Contents
Contents 1
Introduction .... ...... ..... ..... ..... ..... .... ..... ..... ..... ..... .... ..... ...... ..... .... ..... ..... ..... ...... ..... ..... ...... ...... ..... ..... ..... .... ..... ..... ..... ..... .... ..... ..... ..... ..... ..... ..... ..
7
1.1 1.2 1.2 1.3 1.3 1.4 1.5
Target gr group .... ...... ..... ...... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... ..... ..... .... .... .... ..... ..... .... .... .... ..... ... Indu Indust stri rial al rob robot ot doc docum umen enta tatition on .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... Repr Repres esen entat tatio ion n of of war warni ning ngss and and note notess .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .. Terms used .... ...... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ...... ..... Trademarks .... ...... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... ..
7 7 7 8 8
2
Product description .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... ....
9
2.1 2.1
Over Ov ervi view ew of User UserTe Tecch ..... ....... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... ..... .....
9
3
Safety ....... ........... ........ ....... ....... ....... ....... ....... ....... ....... ....... ........ ....... ....... ........ ....... ....... ........ ........ ........ ....... ....... ........ ....... ....... ........ ....... ....... ...... ..
11
4
Installation ..... ....... .... ..... ..... ..... ..... .... ..... ..... .... ..... ..... ..... ..... .... ..... ..... ..... ..... .... ..... ...... ..... .... ..... ..... ..... ...... ..... ..... ...... ...... ..... ..... ..... .... ..... ..... ....
13
4.1 4.1 4.2 4.2 4.3 4.3
Sys System tem requ requir irem emen ents ts ..... ....... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... Inst Instal alliling ng or or upda updatiting ng Use UserT rTec ech h .... ....... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... ..... ..... ..... ..... .... .... .. Uni Uninsta nstallllin ing g Use UserT rTec ech h .... ...... ..... ..... .... .... ..... ..... .... .... ..... ..... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... ..... ...
13 13 13
5
Operation ..... ........ ..... .... ..... ..... ..... ..... .... ..... ..... .... ..... ..... ..... ..... .... ..... ...... ..... .... ..... ..... ..... ..... .... ..... ..... ..... ...... ..... ..... ...... ...... ..... ..... ..... .... ..... ..... ....
5.1 5.1
Refr Refres eshi hing ng User UserTe Tech ch .... ....... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ...... ..... .... .... .... ..... ..... ....
15
6
Programming ...... ........ ..... ..... .... ..... ..... ..... ..... .... ..... ..... ..... ..... ..... ..... ..... ...... ..... ..... ..... .... ..... ..... ..... ..... .... ..... ...... ..... .... ..... ..... ..... ..... .... ..... .....
17
6.1 6.1 Ov Over ervi view ew of KFD KFD synt syntax ax .... ...... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... 6.2 Symbols and fon fonts ....... .......... ...... ...... ....... ....... ...... ....... ........ ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ....... ....... ...... ...... ....... ...... 6.3 Important KF KFD te terms .... ...... .... ..... ..... .... .... ..... ..... .... .... ..... ..... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... ..... ... 6.3.1 Special characters .... ...... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... .... 6.3.2 Strings ...... ......... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ....... ........ ....... ...... ..... 6.3. 6.3.3 3 Param aramet eter er ref refer eren ence ce pla place ceho hollder der .. ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ...... ..... ..... ..... ..... ..... ..... ..... 6.3. 6.3.4 4 Nami Naming ng conv conven enti tion onss and and keyw keywor ords ds .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .. 6.3.5 Simple data types .... ....... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ...... ..... .... .... .... 6.3.6 Areas of validity ...... .......... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ........ ....... ....... ....... ...... ...... ....... ...... 6.4 6.4 Prog Progra ramm mmin ing g a tech techno nolo logy gy pac packa kage ge .... ...... .... ..... ..... .... .... ..... ..... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... .... 6.4.1 Desi Desig gning th the te technology .... ...... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... ..... ..... .... .... .. 6.4.2 Creating a KF KFD fifile .... ...... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... .... ..... ..... .... 6.4.3 DEFTP ... ENDTP .... ...... ..... ...... ..... .... .... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... 6.4.4 DECL PARAM ...... ......... ....... ....... ...... ...... ....... ....... ....... ........ ....... ...... ....... ........ ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ...... .. 6.4.5 Field types ...... .......... ....... ...... ...... ....... ....... ...... ....... ........ ....... ...... ....... ........ ....... ...... ....... ....... ...... ...... ....... ....... ....... ........ ....... ...... ....... ........ ....... ...... ...... ... 6.4. 6.4.5. 5.1 1 Stat Static ic fiel field d type type ....... ........... ....... ...... ....... ........ ....... ....... ....... ...... ...... ....... ....... ...... ....... ........ ....... ...... ....... ........ ....... ...... ....... ....... ....... ........ ....... ...... ..... 6.4. 6.4.5. 5.2 2 Free Free fiel field d typ type e ....... .......... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ....... ........ ....... ...... ....... ....... ...... ...... ....... ....... ...... ....... ........ ....... ...... ....... ...... .. 6.4. 6.4.5. 5.3 3 Fiel Field d ty type Name ame ....... .......... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ....... ...... 6.4. 6.4.5. 5.4 4 Fiel Field d type type Numb Number er .... ...... .... ..... ...... ..... .... .... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... ..... ..... .... .... .. 6.4. 6.4.5. 5.5 5 Fiel Field d ty type REAL ....... .......... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ....... ....... ...... ...... ..... .. 6.4. 6.4.5. 5.6 6 Fiel Field d ty type List ist ....... .......... ...... ...... ....... ....... ...... ....... ........ ....... ...... ....... ....... ...... ...... ....... ....... ....... ........ ....... ...... ....... ........ ....... ...... ....... ....... ...... ...... ...... ... 6.4. 6.4.5. 5.7 7 Fiel Field d ty type BOOL BOOL ..... ....... .... .... .... .... ..... ..... .... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ...... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... 6.4.6 DECL FOLD ....... .......... ...... ....... ....... ...... ...... ...... ....... ....... ...... ...... ....... ....... ....... ........ ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ........ ....... ...... ... 6.4.7 Generating KRL code ...... ........ .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... .. 6.4.8 DECL INLINEFORM ..... ....... .... ..... ...... ..... .... .... ..... ..... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... 6.4.9 Format types ...... ......... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ....... ........ ....... ...... ...... ....... ....... ...... ....... ....... ... 6.4. 6.4.9. 9.1 1 Form Format at type type WYSI WYSIWY WYG G ..... ....... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... 6.4. 6.4.9. 9.2 2 Form Format at type type SUB .... ....... ..... .... .... ..... ..... ..... ..... .... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... ..
17 17 18 18 19 19 19 20 20 20 21 21 22 23 23 23 24 24 25 26 27 29 30 31 31 32 32 33
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
15
3 / 81
KUKA.UserTech 3.2
4 / 81
6.4. 6.4.9. 9.3 3 Form Format at typ type e DSU DSUB B ..... ....... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... 6.4. 6.4.9. 9.4 4 Form Format at type type FCT FCT .... ...... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ... 6.4. 6.4.9. 9.5 5 Form Format at typ type e DFC DFCT T ..... ....... .... ..... ..... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... 6.4. 6.4.9. 9.6 6 Form Format at type type ASS .... ...... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... ..... ..... .. 6.4. 6.4.9. 9.7 7 Form Format at type type ASSA ASSAGG GG .... ....... ..... .... .... .... .... .... ..... ..... .... .... .... .... .... .... ..... ..... .... .... .... .... .... .... ..... ..... .... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .. 6.5 6.5 Prog Progra ramm mmin ing g par param amet eter er list listss ... ..... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... 6.5.1 DECL PARAM PL_ .. ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .. 6.5. 6.5.2 2 Defi Defini ning ng the the str struc uctu ture re data data type type ..... ....... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... 6.5.3 DECL PLIST ...... ......... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ....... ....... ...... ...... ....... ....... ...... ....... ....... ... 6.6 6.6 Prog Progra ramm mmin ing g tec techn hnol olog ogyy key keyss ..... ....... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ...... ..... ..... ... 6.6. 6.6.1 1 Desi Design gnin ing g the the tec technol hnolog ogyy keys keys .... ....... ..... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .... ..... ...... ..... .... .... ..... ..... .... 6.6.2 DECL STATKEY .... ...... ..... ...... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .. 6.6. 6.6.2. 2.1 1 Requ Requir ired ed ima image ge siz sizes es ..... ....... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .. 6.6.2.2 6.6.2.2 Determ Determini ining ng the deci decimal mal value value for for activat activation ion optio options ns ............ ............. ............ ............. ..... 6.6.3 DECL STATKEYBAR .... ...... .... ..... ..... .... .... .... ..... ..... .... .... .... .... .... ..... ..... .... .... .... .... .... .... ..... ..... .... .... .... .... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... 6.6.4 SET ...... ......... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ... 6.7 6.7 Progr rogram ammi ming ng scri script ptss .... ...... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... .. 6.7.1 DEFSCRIPT … ENDSCRIPT ..... ....... .... .... .... ..... ...... ..... ..... ..... ..... ..... ..... ...... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .. 6.7.2 SETVAR ....... .......... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ...... .. 6.7.3 SHOWVAR ....... .......... ...... ....... ....... ...... ....... ........ ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ..... 6.7.4 REDECL ...... ......... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ... 6.7.5 DO ...... .......... ....... ...... ....... ........ ....... ...... ...... ....... ....... ...... ....... ........ ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ....... ........ ....... ...... ...... ... 6.7.6 MESSAGE ....... ........... ....... ...... ...... ...... ...... ....... ....... ...... ...... ...... ....... ....... ...... ...... ...... ....... ....... ...... ...... ...... ....... ....... ...... ...... ...... ...... ....... ....... ...... ...... ..... .. 6.7. 6.7.7 7 SWIT SWITCH CH … CAS CASE E (E (ELSE) LSE) … END ENDS SWITCH ITCH .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .. 6.7. 6.7.8 8 SWITC ITCH DIA DIALO LOG G … CASE ASE … ENDS NDSWITC WITCH H .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .. 6.7.9 Predefined scripts .... ....... ...... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... .... .... .... .. 6.7.1 6.7.10 0 Lang Languag uage e syste system m keys keys for mes messag sages es and and butt button onss .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .. 6.8 6.8 Inte Integr grati ating ng a tec techn hnol olog ogyy into into KUK KUKA A smart smartHM HMII .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .. 6.8. 6.8.1 1 Conf Config igur urat atio ion n file file Sma Smart rtHM HMI. I.Us User er.C .Con onfifig g .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... 6.8.2 Defining menu elements ....... ......... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..
33 34 35 35 36 36 37 37 38 39 39 39 42 43 44 44 44 44 45 45 46 46 47 47 48 49 49 49 50 51
7
Archiving ....... ........... ....... ....... ........ ....... ....... ....... ....... ....... ....... ........ ....... ....... ........ ....... ....... ........ ....... ....... ........ ....... ....... ....... ....... ....... ....... ......
53
7.1 7.2
Archiving fifiles ....... ........... ........ ....... ...... ....... ........ ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ...... ...... ....... ....... ..... Restoring fifiles ....... ........... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ...... ....... ....... ...... ....... ....... ...... ....... ........ ....... ...... ....... ....... .....
53 53
8
Examples ....... ........... ........ ....... ....... ....... ....... ....... ....... ....... ....... ........ ....... ....... ........ ....... ....... ........ ....... ....... ........ ....... ....... ....... ....... ....... ....... ......
55
8.1 LASER tec technology .... ...... .... ..... ..... .... .... ..... ...... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... .... .... ..... ..... .... .... ..... ...... ..... .... .... .... ..... ..... .... .... .... .. 8.2 8.2 Exam Exampl ple e pro progra gram m for for a par param amet eter er list list .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... 8.3 8.3 Call Callin ing g scr scrip ipts ts via via acti action onss .... ....... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... 8.3. 8.3.1 1 Scri Script pt call call afte afterr the the inli inline ne form form is open opened ed and and clo close sed d ......... ......... .......... ......... .......... ......... ..... 8.3.2 8.3.2 Scri Script pt cal calll afte afterr the the inli inline ne for form m is modi modifified ed and and cre creat ated ed ...... ............ .......... ............. ......... ..... 8.3. 8.3.3 3 Scri Script pt call call afte afterr swi switc tchi hing ng to an inli inline ne form form .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... 8.4 8.4 Exam Exampl ples es of int integ egrat ratio ion n of techn technol olog ogyy packa package gess .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... ........ ...... 8.4.1 TWINKLE technology .... ...... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ... 8.4.1. 8.4.1.1 1 Integr Integrati ating ng the the TWIN TWINKLE KLE techno technolog logyy in a menu menu ... ..... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... 8.4.1.2 8.4.1.2 Integra Integratin ting g the TWINKL TWINKLE E techno technolog logyy in a subm submenu enu ........... ............ .......... ...... .......... ...... ........ 8.4.2 GLUE technologie .... ....... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... .... ..... ..... .... .... .... ..... ..... .... .... ..... ..... .... .... ..... ..... .... .... .... ..... ...... ..... .... .... ..... ..... .... .... .. 8.4.2. 8.4.2.1 1 Integr Integrati ating ng the the GLUE GLUE techno technolog logyy in in a menu menu .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... 8.4.3 DISPSET technology .... ...... ..... ..... ..... ..... .... .... .... .... .... .... ..... ..... .... .... .... .... .... .... ..... ..... .... .... .... .... .... .... ..... ..... .... .... .... .... .... .... ..... ..... .... .... .... .... .. 8.4.3.1 8.4.3.1 Integra Integratin ting g the the DISPS DISPSET ET tech technol nology ogy in a menu menu .... ...... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... .... ....
55 56 59 60 61 62 63 63 63 64 66 66 68 69
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
Contents
9
KUKA Service ..............................................................................................
71
9.1 9.2
Requesting support .................................................................................................... KUKA Customer Support ...........................................................................................
71 71
Index .............................................................................................................
79
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
5 / 81
KUKA.UserTech 3.2
6 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
1 Introduction
1
Introduction
1.1
Target group
This documentation is aimed at users with the following knowledge and skills:
Advanced knowledge of the robot controller system Advanced KRL programming skills
For optimal use of our products, we recommend that our customers take part in a course of training at KUKA College. Information about the training program can be found at www.kuka.com or can be obtained directly from our subsidiaries. 1.2
Industrial robot documentation
The industrial robot documentation consists of the following parts:
Documentation for the manipulator Documentation for the robot controller Operating and programming instructions for the KUKA System Software Documentation relating to options and accessories Parts catalog on storage medium
Each of these sets of instructions is a separate document. 1.3 Safety
Representation of warnings and notes
These warnings are relevant to safety and must be observed. These warnings mean that it is certain or highly probable that death or severe injuries will occur, if no precautions are taken. These warnings mean that death or severe injuries may occur, if no precautions are taken. These warnings mean that minor injuries may occur, if no precautions are taken. These warnings mean that damage to property may occur, if no precautions are taken. These warnings contain references to safety-relevant information or general safety measures. These warnings do not refer to individual hazards or individual precautionary measures. This warning draws attention to procedures which serve t o prevent or remedy emergencies or malfunctions: Procedures marked with this warning must be followed exactly.
Notes
These hints serve to make your work easier or contain references to further information.
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
7 / 81
KUKA.UserTech 3.2
Tip to make your work easier or reference to further information.
1.4
Terms used
Term KFD
Description KUKA form description
KFD file KRL KUKA smartHMI
File format used to describe technologies KUKA Robot Language User interface of the KUKA System Software (KUKA smart Human-Machine Interface) Teach pendant for the industrial robot
KUKA smartPAD 1.5
Trademarks Windows is a trademark of Microsoft Corporation.
8 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
2 Product description
2
Product description
2.1
Overview of UserTech
Functions
UserTech is an add-on technology package with the following functions:
Definition of user-specific inline forms Definition of user-specific messages Definition of user-specific technology keys and buttons Definition of user-specific scripts for inline forms and technology keys Definition of user-specific folds for inline forms Integration of user-defined inline forms and technology keys into the KUKA smartHMI user interface
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
9 / 81
KUKA.UserTech 3.2
10 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
3 Safety
3
Safety This documentation contains safety instructions which r efer specifically to the software described here. The fundamental safety information for the industrial robo t can be found in the “Safety” chapter of the Operating and Programming Instructions for System Integrators or the Operating and Programming Instructions for End Users. The “Safety” chapter in the operating and programming instructions must be observed. Death to persons, severe injuries or considerable damage to property may otherwise result.
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
11 / 81
KUKA.UserTech 3.2
12 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
4 Installation
4
Installation
4.1
System requirements
Software
4.2
KUKA System Software 8.2 or 8.3
Installing or updating UserTech
It is advisable to archive all relevant data before updating a software package. Preparation
Copy software from CD to KUKA USB stick. The software must be copied onto the stick with the file Setup.exe at the highest level (i.e. not in a folder). Recommendation: Always use KUKA sticks. Data may be lost if sticks from other manufacturers are used.
Precondition
“Expert” user group
Procedure
1. Connect the USB stick to the robot controller or smartPAD. 2. In the main menu, select Start-up > Additional software. 3. Press New software. The entry UserTech must be displayed in the Name column and drive E:\ or K:\ in the Path column. If not, press Refresh. 4. If the specified entries are now displayed, continue with step 5. If not, the drive from which the software is being installed must be configured first: Press the Configuration button. A new window opens. Select a line in the Installation paths for options area. Note: If the line already contains a path, this path will be overwritten. Press Path selection. The available drives are displayed. Select E:\. (If stick connected to the robot controller.) Or select K:\. (If stick connected to the smartPAD.) Press Save. The window closes again. The drive only needs to be configured once and then remains saved for further installations. 5. Mark the entry UserTech and click on Install. Answer the request for confirmation with Yes. 6. Confirm the reboot prompt with OK. 7. Remove the stick. 8. Reboot the robot controller.
LOG file
A LOG file is created under C:\KRC\ROBOTER\LOG.
4.3
Uninstalling UserTech
It is advisable to archive all relevant data before uninstalling a software package. Precondition
“Expert” user group
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
13 / 81
KUKA.UserTech 3.2
14 / 81
Procedure
1. In the main menu, select Start-up > Additional software. All additional programs installed are displayed. 2. Mark the entry UserTech and click on Uninstall. Reply to the request for confirmation with Yes. Uninstallation is prepared. 3. Reboot the robot controller. Uninstallation is resumed and completed.
LOG file
A LOG file is created under C:\KRC\ROBOTER\LOG.
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
5 Operation
5
Operation
5.1
Refreshing UserTech
Description
This function allows UserTech to be refreshed while the robot controller is running, e.g. to display inline forms that the user has redefined. UserTech is reinitialized without rebooting the system. The progress of the reinitialization is indicated in the message window.
Precondition
Procedure
“Expert” user group In the main menu, select the menu sequence Configuration > Miscellaneous > Reinitialize UserTech.
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
15 / 81
KUKA.UserTech 3.2
16 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
6 Programming
6
Programming
6.1
Overview of KFD syntax
Technologies DEFTP … ENDTP
(>>> 6.4.3 "DEFTP ... ENDTP" Page 22)
Inline forms DECL FOLD DECL INLINEFORM DECL PARAM
(>>> 6.4.6 "DECL FOLD" Page 30) (>>> 6.4.8 "DECL INLINEFORM" Page 31) (>>> 6.4.4 "DECL PARAM" Page 23)
Parameter lists DECL PARAM PL_ DECL PLIST
(>>> 6.5.1 "DECL PARAM PL_" Page 37) (>>> 6.5.3 "DECL PLIST" Page 38)
Technology keys DECL STATKEY DECL STATKEYBAR SET
(>>> 6.6.2 "DECL STATKEY" Page 39) (>>> 6.6.3 "DECL STATKEYBAR" Page 44) (>>> 6.6.4 "SET" Page 44)
Scripts DEFSCRIPT … ENDSCRIPT DO MESSAGE REDECL SET SETVAR SHOWVAR SWITCH … CASE(ELSE) … ENDSWITCH SWITCH DIALOG … CASE … ENDSWITCH ACCEPTINLINEFORM CANCELINLINEFORM END NOTHING 6.2
(>>> 6.7.1 "DEFSCRIPT … ENDSCRIPT" Page 44) (>>> 6.7.5 "DO" Page 46) (>>> 6.7.6 "MESSAGE" Page 47) (>>> 6.7.4 "REDECL" Page 46) (>>> 6.6.4 "SET" Page 44) (>>> 6.7.2 "SETVAR" Page 45) (>>> 6.7.3 "SHOWVAR" Page 45) (>>> 6.7.7 "SWITCH … CASE (ELSE) … ENDSWITCH" Page 47) (>>> 6.7.8 "SWITCH DIALOG … CASE … ENDSWITCH" Page 48) (>>> 6.7.9 "Predefined scripts" Page 49)
Symbols and fonts
The following symbols and fonts are used in the syntax descriptions: Syntax element KRL code
Elements that must be replaced by program-specific entries
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
Representation Courier font Upper-case letters Examples: GLOBAL; ANIN ON; OFFSET Italics Upper/lower-case letters Examples: Distance; Time; Format
17 / 81
KUKA.UserTech 3.2
Syntax element Optional elements
Representation In angle brackets
Elements that are mutually exclusive
6.3
Important KFD terms
6.3.1
Special characters
Example:
Separated by the "|" symbol Example: IN |OUT
The following special characters are used in the KFD code: Character ;
Description Designates a comment Example: ;This is a comment A statement in KFD must be contained in one continuous program line.
_
"_" is used to continue a program line despite an intervening line break. There must be a space between the preceding program line and the "_" character. Example: decl _ int _ number (= Program line: decl int number) Cancels the special function of a subsequent character. The character "/" itself is not displayed in the string.
/
Examples:
%
/%: Function of the "%" character for designating a pa-
rameter reference placeholder is canceled. /;: Function of the ";" character for designating a comment is canceled. Designates a parameter reference placeholder (>>> 6.3.3 "Parameter reference placeholder" Page 19) The "/" character or a space must be inserted after the parameter reference placeholder. If a space is used, a second space must be inserted if a further character or expression follows after the parameter reference placeholder. A space used to terminate a parameter reference placeholder is not displayed in the string. Example: %INLINEFORM/ %INLINEFORM Designates a value assignment
#
Examples:
18 / 81
#%INLINEFORM #TOGGLE Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
6 Programming
6.3.2
Strings
A string is a sequence of alphanumeric characters of fixed or variable length. The following rules apply in KFD:
Strings must not include any commas. Strings must not include any line breaks, i.e. they must be contained within one line. Strings are always enclosed in double quotation marks, e.g. "This is a string". If the quotation mark is intended to be part of the string, its meaning as a special character must be canceled using the "/" character, e.g. "The character /"". Additional rules apply when programming fields of type BOOL. (>>> 6.4.5.7 "Field type BOOL" Page 29)
6.3.3
Parameter reference placeholder
A parameter reference placeholder consists of a percent sign and a parameter name. The percent sign causes the name of the parameter to be output not a text but as as a value. The following parameter reference placeholders are predefined:
6.3.4
Name %TP
Description Name of the technology
%INLINEFORM
First parameter in every inline form Name of the inline form
%MODULE
Second parameter in every inline form Name of the program in Navigator
Naming conventions and keywords
Names
Examples of names in KFD: variable names, function names, subprogram names
Names in KFD can have a maximum length of 24 characters. Names in KFD can consist of letters (A...Z), numbers (0...9) and the special characters “_” and “$”. Names in KFD must not begin with a number. Names in KFD must not be keywords. The names of all system variables begin with the “$” sign. To avoid confusion, do not begin the names of user-defined variables with this sign.
Keywords
Keywords are sequences of letters having a fixed m eaning. They must not be used in programs in any way other than with this meaning. No distinction is made between uppercase and lowercase letters. A keyword remains valid irrespective of the way in which it is written. Example: The sequence of letters CASE is an integral part of the KRL syntax
SWITCH…CASE…ENDSWITCH. For this reason, CASE must not be used in any other way, e.g. as a variable name.
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
19 / 81
KUKA.UserTech 3.2
The use of keywords reserved for KRL is not permitted. Further information about keywords is contained in the “Operating and Programming Instructions for System Integrators”. 6.3.5
Simple data types
The following simple data types are predefined: Data type Integer
Keyword INT
Description Integer
Real
Examples: 1; 32; 345 Floating-point number
REAL
Boolean
Character
-2³¹-1 … 2³¹-1
+1.1E-38 … +3.4E+38
Examples: 1.43; 38.50; 300.25 Logic state
BOOL
TRUE
FALSE
1 character
CHAR
ASCII character
Examples: "A"; "1"; "q" 6.3.6
Areas of validity
Variables and data objects have local validity, i.e. in a defined technology package, if they are declared between the DEFTP and ENDTP statements. Variables and data objects have global validity, i.e. in all technology packages, if they are declared outside the DEFTP and ENDTP statements. We recommend combining all global variables and data objects in a KFD file.
6.4
Programming a technology package
Overview
Step 1
Description Design the technology.
2
(>>> 6.4.1 "Designing the technology" Page 21) Create KFD file.
3
(>>> 6.4.2 "Creating a KFD file" Page 21) Define the technology.
4
(>>> 6.4.3 "DEFTP ... ENDTP" Page 22) Define the parameters.
5
(>>> 6.4.4 "DECL PARAM" Page 23) Define parameter lists. (>>> 6.5 "Programming parameter lists" Page 36)
20 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
6 Programming
Step 6
Description Prepare the scripts.
7
(>>> 6.7.1 "DEFSCRIPT … ENDSCRIPT" Page 44) Create folds.
8
(>>> 6.4.6 "DECL FOLD" Page 30) Generate KRL code.
9
(>>> 6.4.7 "Generating KRL code" Page 31) Define inline forms.
10
(>>> 6.4.8 "DECL INLINEFORM" Page 31) Program technology keys.
11
(>>> 6.6 "Programming technology keys" Page 39) Program the scripts.
12
(>>> 6.7 "Programming scripts" Page 44) Integrate the technology into the graphical user interface. (>>> 6.8 "Integrating a technology into KUKA smartHMI" Page 49)
6.4.1
Designing the technology
Define the structure of the inline forms, e.g. number, type and layout of the input boxes. Define the parameters in the inline form and their respective value range s and parameter lists. Define the program lines (= folds) to be inserted. Define the technology keys (e.g. functions, conditions for activation and layout). Define the scripts to be called by user actions. Actions include:
6.4.2
Open or close an inline form. Press Touch-Up. Press, release, or hold down a technology key. Display a technology key.
Creating a KFD file
Description
Technologies created with UserTech are described as KFD files and saved by default in the directory C:\KRC\TP\USERTECH\TEMPLATE.
Any editor can be used to edit the KFD file. The KFD file must be saved in ASCII format. The name of the KFD file can be freely chosen within the conventions of the Windows operating system. The KFD file can contain one or more technologies. The name of a technology may only appear once within the system.
With complex technologies it is recommended that the KFD files b elonging to a single technology are saved in the directory C:\KRC\TP\TPName\TEMPLATE. A key must be created in the registry database of the Windows operating system for the folder TPName. Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
21 / 81
KUKA.UserTech 3.2
Procedure
1. Open the registry editor. 2. Select the path \HKEY_Local_Machine\Software\KUKARoboterGmbH\Options\KFD. 3. Create a new character string: Right-click and select the menu sequence New > String. 4. Assign the name of the folder TPName as the name of the string. 5. Place the cursor on the string element, right-click and select the menu item Change: The Edit String window is opened. 6. Under "Value", enter the new key: %InstallationDir%\TP\TPName\Template
7. Confirm the key with OK. 6.4.3
DEFTP ... ENDTP
Description
Defining a technology
Syntax
DEFTP Name <= { }> ENDTP
Explanation of the syntax
Element DEFTP SOC
SOT
Description Name of the technology Defines whether the inline forms for a technology can be selected via a list box in the inline form.
TRUE: Selection is possible.
FALSE: Selection is not possible.
Default, if SOC is not defined: TRUE Defines whether technologies can be selected via a list box in the inline form.
TRUE: Selection is possible.
FALSE: Selection is not possible.
Default, if SOT is not defined: TRUE Example 1
DEFTP MyTech ENDTP DEFTP OtherTech ENDTP
The technologies MyTech and OtherTech can be selected via a list box in the inline form.
Fig. 6-1: List box for selecting a technology Example 2
22 / 81
DEFTP MyTech = {SOT FALSE} ENDTP DEFTP OtherTech ENDTP
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
6 Programming
The technologies MyTech and OtherTech cannot be selected via a list box in the inline form.
Fig. 6-2: MyTech technology
6.4.4
DECL PARAM
Description
Declaration of a box (field) in the inline form
Syntax
DECL PARAM Name = {
VALUE {Field type}} Explanation of the syntax
Element DECL PARAM SHORTNAME[]
Description Name of the box Name displayed before the box
UNIT[] ENABLE[ ]
The name can have a maximum length of 16 characters. Unit displayed after the box Activation of an input box TRUE: Input box is activated. FALSE : Input box is deactivated.
VALUE
Default, if ENABLE[ ] is not defined: TRUE Type of box (field) (>>> 6.4.5 "Field types" Page 23)
Example
DECL PARAM FieldNumber = {SHORTNAME[] "Distance: ", UNIT[] "mm", _ VALUE {NUMBER: MIN 0, MAX 100, STEP 2, DEFAULT 50}}
An integer value from 0 to 100 can be entered. The box is of type Number.
Fig. 6-3: Example of field type Number
The value in the input box can be increased or decreased in steps of 2 using the cursor keys on the keyboard. 6.4.5
Field types
6.4.5.1
Static field type
Description
A static text is displayed in the inline form, which cannot be edited.
Syntax
VALUE {STATIC: DEFAULT[]"String" }
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
23 / 81
KUKA.UserTech 3.2
Explanation of the syntax
Element
Example
DECL PARAM FieldStatic = _ {VALUE {STATIC: DEFAULT[] "Field cannot be edited"}}
DEFAULT[]
Description Text displayed in the inline form
Fig. 6-4: Example of static field type 6.4.5.2
Free field type
Description
A text is displayed in the input box, which can be edited.
Syntax
VALUE {FREE: DEFAULT[]"String" }
Explanation of the syntax
Element DEFAULT[]
Description Default text that is displayed in the input box when you first open the inline form If no string is defined, the input box is empty.
Example
DECL PARAM FieldFree = {SHORTNAME[] "Programmer: ", _ VALUE {FREE: DEFAULT[] " Name "}}
Fig. 6-5: Example of free field type 6.4.5.3
Field type Name
Only input fields with field type Name can be linked with parameter lists. Description
A variable name, function name or subprogram name is displayed in the input box, which can be edited. The syntax of the name is checked. The use of keywords reserved for KRL is not permitted. Further information about keywords is contained in the “Operating and Programming Instructions for System Integrators”.
Syntax
24 / 81
VALUE {Name: DEFAULT[] "Name" }
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
6 Programming
Explanation of the syntax
Element DEFAULT[]
Description Name of the variable, function or subprogram that is displayed by default in the input box when the inline form is first opened If the last character of a name is a number (0…9) then by default, the number is incremented by one every time an inline form of this type is created. The counter is reset if the inline form is canceled after it is opened. If you do not want the number to be incremented, the key IncOnOpen, type DWORD, must be created in the registry database. Path in the registry database: HKEY_LOCAL_MACHINE\SOFTWARE\KUKA Roboter GmbH\Options\KFD IncOnOpen:
Example
DWORD=00000000: Number is not incremented. DWORD=00000001: Number is incremented.
DECL PARAM FieldName = {SHORTNAME[] "Welding-Point-Nr.: ", _ VALUE {NAME: DEFAULT[] "WPT1"}}
Fig. 6-6: Example of field type Name
No IncOnOpen key is created in the registry database. When the inline form is first opened, the value WPT1 is displayed by default. The next time the inline form is created, the number is incremented by one and the value WPT2 is displayed. 6.4.5.4
Field type Number
Description
An integer value is displayed in the input box, which can be edited using the numeric keypad on the keyboard.
Syntax
VALUE {NUMBER: MIN minimum value, MAX maximum value, }
Explanation of the syntax
Element MIN
Description Type: INT Minimum input value Note: This value must always be specified.
MAX
Type: INT Maximum input value Note: This value must always be specified.
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
25 / 81
KUKA.UserTech 3.2
Element STEP
Description Type: INT Increment for the cursor keys on the keyboard that can be used for increasing and decreasing the value in the input box.
DEFAULT
Default, if STEP is not defined: 1 Type: INT Default value that is displayed when you first open the inline form.
AUTOLIMIT
Default, if DEFAULT is not defined: 0 TRUE: A value that is too large or too small is automatically set to the minimum or maximum input value. (= default if AUTOLIMIT is not defined)
Example
Entered value < minimum value: Value is set to minimum value. Entered value > maximum value: Value is set to maximum value.
DECL PARAM FieldNumber = {SHORTNAME[] "Distance: ", UNIT[] "mm", _ VALUE {NUMBER: MIN 0, MAX 100, STEP 2, DEFAULT 50}}
An integer value from 0 to 100 can be entered.
Fig. 6-7: Example of field type Number
The value in the input box can be increased or decreased in steps of 2 using the cursor keys on the keyboard. 6.4.5.5
Field type REAL
Description
A floating-point number is displayed in the input box, which can be edited using the numeric keypad on the keyboard.
Syntax
VALUE {REAL: MIN minimum value, MAX maximum value, }
Explanation of the syntax
Element MIN
Description Type: REAL Minimum input value Note: This value must always be specified.
MAX
Type: REAL Maximum input value Note: This value must always be specified.
26 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
6 Programming
Element STEP
Description Type: REAL Increment for the cursor keys on the keyboard that can be used for increasing and decreasing the value in the input box.
DEFAULT
Default, if STEP is not defined: 0.1 Type: REAL Default value that is displayed when you first open the inline form.
AUTOLIMIT
Default, if DEFAULT is not defined: 0.0 TRUE: A value that is too large or too small is automatically set to the minimum or maximum input value. (= default if AUTOLIMIT is not defined)
Example
Entered value < minimum value: Value is set to minimum value. Entered value > maximum value: Value is set to maximum value.
DECL PARAM FieldReal = {SHORTNAME[] "Delay: ", UNIT[] "sec", _ VALUE {REAL: MIN 0.5, MAX 5, STEP 0.5, DEFAULT 2}}
A value from 0.5 to 5 can be entered.
Fig. 6-8: Example of field type REAL
The value in the input box can be increased or decreased in steps of 0.5 using the cursor keys on the keyboard. 6.4.5.6
Field type List
Description
A list box is displayed in the inline form. You can use the list to select a parameter. The parameters in the list cannot be edited.
Syntax
VALUE {LIST: | ITEM[1] List parameter 1,
< … ,> - } Explanation of the syntax
Element DEFAULT[]
Description Default list parameter value that is displayed when you first open the inline form. This parameter must correspond to one of the defined list parameters. (VALUE[] or DISP[])
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
27 / 81
KUKA.UserTech 3.2
Element POS
ITEM[1] … ITEM[n]
Description Type: INT Default list parameter number [n] that is displayed when you first open the inline form. Values of list parameters [1] to [n] Complete syntax of the list parameters: {ITEM: VALUE[] "StringX" <, DISP[]
"StringN" >}
VALUE[]: This value is processed. DISP[]: This value is displayed.
Default, if DISP[] is not defined: the displayed value corresponds to the processed value. Example 1
DECL PARAM FieldList = {SHORTNAME[] "Weave pattern:", _ VALUE {LIST: POS 1, ITEM[1] {ITEM: VALUE[] "Triangle"}, _ ITEM[2] {ITEM: VALUE[] "Trapezoid"}, _ ITEM[3] {ITEM: VALUE[] "Sinus"}}}
Fig. 6-9: Example of field type List Example 2
DEFTP MyTech = {SOC TRUE} DECL PARAM FieldList = {SHORTNAME[] "Weave pattern:", _ VALUE {LIST: ITEM[1] {ITEM: VALUE[] "3", DISP[] "Triangle"}, _ ITEM[2] {ITEM: VALUE[] "Trapezoid"}, _ ITEM[3] {ITEM: VALUE[] "Sinus"}}} DECL FOLD MyFold[1] MyFold[1] = "Model = %FieldList" DECL INLINEFORM MyCmd = {FOLD[1] MyFold, PARAM[1] FieldList} ENDTP
Fig. 6-10: Example of field type List - inline form MyTech.MyCmd
The value Triangle selected in the list box WeavePattern is not the value actually processed. In the fold, the global variable Model is assigned value 3.
28 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
6 Programming
KRL code in the program:
6.4.5.7
Field type BOOL
Description
The inline form displays a checkbox that can be activated and deactivated.
Syntax
VALUE {BOOL: DEFAULT Bool ,
} Explanation of the syntax
Element DEFAULT
TRUE[]
Description Default check box value that is displayed when you first open the inline form.
TRUE: Check box active.
FALSE: Check box inactive.
Text that is inserted in the program as KRL code if the checkbox is active. If TRUE[] is not defined and the checkbox is active, "TRUE" is inserted into the program by default as KRL code. Note: For BOOL type fields, additional rules apply when
FALSE[]
creating strings. (>>> "Rules for strings" Page 29) Text that is inserted in the program as KRL code if the check box is inactive. If FALSE[] is not defined and the check box is inactive, "FALSE" is inserted into the program by default as KRL code. Note: For BOOL type fields, additional rules apply when
creating strings. (>>> "Rules for strings" Page 29) Rules for strings
The string can have a maximum length of 16 characters. The following notations or characters are not allowed in the string:
Example
"" (empty string)
"
"Las,on" (comma)
"Las"on" (quotation marks)
" (only space)
DEFTP MyTech DECL PARAM ParamList = {SHORTNAME[] "Val: ", _ VALUE {Name: DEFAULT[] "VAL1"}} ... DECL PARAM FieldBool = {SHORTNAME[] "Laser", _ VALUE {BOOL: DEFAULT TRUE, TRUE[] "EIN", FAlSE[] "AUS"}} ... DECL FOLD PFold[1] PFold[1] = "ParamList" ... DECL INLINEFORM ILF_With_ParamList={FOLD[1] PFold, _ PARAM[1] ParamList, PARAM[2] FieldBool ENDTP
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
29 / 81
KUKA.UserTech 3.2
Fig. 6-11: Example of field type BOOL (check box active )
KRL code in the program (check box active):
Fig. 6-12: Example of field type BOOL (check box inactive)
KRL code in the program (check box inactive):
6.4.6
DECL FOLD
Description
Declaring a fold Folds make programs more transparent. Folds a re used to hide sections of the program. The hidden program sections are processed during program execution in exactly the same way as visible program sections.
Syntax
DECL FOLD NAME[n] NAME [1] = "String1" ,
... NAME [n] = "StringN"
Explanation of the syntax
Element NAME [n] String1 … StringN
Description Name of the fold Number of lines in the fold Contents of the fold All parameter reference placeholders in a string are replaced in the program by the values selected in the inline form.
Example
DECL FOLD MyFold[2] MyFold[1] = "Laser(#%INLINEFORM/,%DataSet/,%Pattern/)" MyFold[2] = "TRIGGER WHEN PATH=%DistanceWay/ DELAY=0 _ DO LASER_ON=TRUE"
The following values are selected in the inline form:
DataSet = DataSet6 DistanceWay = 210 Pattern = STEP INLINEFORM = ON
KRL code in the program: Laser(#ON,DataSet6,STEP) TRIGGER WHEN PATH=210 DELAY=0 DO LASER_ON=TRUE
30 / 81
Issued: 09.01.2013 Version: KST UserTech 3.2 V1 en (PDF)
6 Programming
6.4.7
Generating KRL code
Description
Subprograms or functions which are also to be inserted in selected programs on closing an inline form must be defined globally.
Procedure
1. Create a program in folder KRC:\R1\TP. 2. In the program, define the required subprograms and functions with the corresponding transfer parameters.
6.4.8
DECL INLINEFORM
Description
Declaration of an inline form
Syntax
DECL INLINEFORM Name = {
<...,>
NameFoldN ,>
<...,>
Bool ,>