Professional Documents
Culture Documents
151531401460
151531401460
151531401460
KR C2
Release 1.1
for KUKA System Software (KSS) Release 5.2, 5.3, 5.4, 5.5
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1 System requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Operating convenience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Overview of the configurable functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2 Safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1 Additional safety instructions for “KUKA.ArcTech Analog” . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Liability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 Designated use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.4 Symbols and icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.4.1 Safety symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.4.2 Icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
8 Mechanical weaving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
8.1 Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
8.2 Weave patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.3 Two--dimensional weaving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
8.3.1 Creating the “Spiral” weave pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.3.2 “Double 8” weave pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
8.4 Changing and creating patterns for mechanical weaving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
8.4.1 Changing existing weave patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
8.4.2 Creating your own weave patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
8.5 Notes on mechanical weaving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
9 Thermal weaving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
9.1 Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
9.1.1 Weave patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
9.1.2 Example of a signal diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
9.2 Combined mechanical and thermal weaving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
9.2.1 Combination possibilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
9.2.2 Practical application possibilities (examples) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
1 Introduction
This documentation has been created as a supplement to the documentation
[KUKA.ArcTech Analog -- Operation] for the Expert user group. In addition to basic
descriptions with accompanying schematic flow diagrams, it contains screenshots of
application tests and information on both standard routines and specific “KUKA.ArcTech
Analog” applications. This is intended to make parameter and hardware configuration and
the programming of arc welding applications easier.
At the expert level, the entire range of KRL commands are available to you. This requires
sufficient knowledge of the KRL programming language.
Texts in serif font are generally extracts from files, for example: DECL
A_TECH_STS_T A10_OPTION=#ACTIVE.
Passages in program listings that appear in bold type and/or are underlined indicate
that entries or changes can or must be made at these points.
Explanatory information on listings is shown in italics.
The syntax description of the KRL programming language is provided in the chapter
[Reference Guide]. Basic information on operation as well as the menu--guided creation
of programs at user level is provided in the documentation [KUKA.ArcTech Analog --
Operation].
2 Safety
WARNING!
Failure to observe these safety instructions could result in injury or a fatal accident
and/or damage to the robot system or other property!
G All pertinent safety regulations as well as the booklet [Safety and Installation
Instructions] are to be observed when working on the system.
G The KUKA safety chapter [KRC Safety, General] is supplied with the robot system and
must be read and understood before commencing work.
G The safety instructions in the KR C2 Operating Handbook must be observed.
2.2 Liability
The “KUKA.ArcTech Analog” technology package has been designed, built, and
programmed using state--of--the--art technology and in accordance with the recognized
safety rules. Nevertheless, improper installation of this unit or its employment for a purpose
other than the intended one may constitute a risk to life and limb of operating personnel or
of third parties, or cause damage to or failure of the control cabinet, resulting in damage to
or failure of the entire robot system and other material property.
“KUKA.ArcTech Analog” may only be used in technically perfect condition in accordance with
its designated use and only by safety--conscious persons who are fully aware of the risks
involved in its operation. Connection and use must be carried out in compliance with this
documentation.
WARNING!
Exact compliance with these safety warnings is necessary for the prevention of
personal injury.
CAUTION!
Exact compliance with these safety warnings is necessary for the prevention of
damage to property.
2.4.2 Icons
Info
Indicates passages which are of particular significance or are useful for greater under-
standing.
See also
Indicates sections or chapters containing further information and explanations.
NOTE
Indicates sections with additional information on a particular subject and highlights special
features.
$CONFIG.DAT CELL.SRC
ARC WELDING
PACKAGE Autom./External
Global and
application data Organization
program
CLEANER.SRC A10_User.SRC
.DAT
-- Shutdown Customer--
-- Torch specific
cleaning after adaptation of
fault situation weld
sequences
(optional)
For additional entries, there is the file $CONFIG.DAT with the section
; User--defined Variables
SPS.SUB
Program running at the controller level (PLC task) for monitoring and error handling in the
event of an interpreter stop.
Assured deactivation and reactivation after an interpreter stop.
This subroutine is used to manually control (by means of the left--hand KCP status keys) wire
feed (WFD) and welding (hot/cold) as well as switching off after an interpreter stop (red
“STOP” button).
The symbols illustrated below are to be found at various points in this documentation; they
indicate whether or not manual changes are permitted in the section of a file being described.
CLEANER.SRC
Torch cleaning package that can be integrated as an option (not included with
“KUKA.ArcTech Analog”); integration of cleaning device deactivation in the event of a fault
leading to an interpreter stop or robot STOPMESS reaction.
A syntax check is not performed (for example, MIN and MAX values) when entries are
made using the menu function “Monitor -- Variable -- Single” or when the file is edited.
Physical
interface
In these index tables the assignment of the physical outputs and inputs is defined and
references are made to the corresponding signal tables of the controller.
This has the advantage that if the terminal assignments for the periphery are changed, all
that is needed is to alter the index tables accordingly.
The signal table links (inputs and outputs) are preconfigured by the manufacturer so
it only remains necessary to adapt the index table to define the physical inputs and
outputs!
If you make any changes to the “NAME_NAT” comments (signal names) directly in the file
$CONFIG.DAT, please ensure that the string between the quotation marks (“ ”) has a
maximum length of 20 characters.
All “OUT_NR” array elements are set to “0” at the factory, meaning they are inactive. The
“INI” element defines the state to which the respective “OUT_NR” physical output is to be
set on initialization. The value “FALSE” sets the output to “LOW”, the value “TRUE” sets it
to “HIGH”.
Example of corresponding entries using the menu function “Monitor -- Variable -- Single”:
Variable Type Characteristics
Assignment of the physical output,
A_WLD_OUT[1].OUT_NR INT
e.g. “10” (default: 0)
State after initialization
(ARC--INIT command)
A_WLD_OUT[1].INI BOOL (default: FALSE)
FALSE = LOW
TRUE = HIGH
20 characters between “ ”; please
bear in mind that when making alter-
A_WLD_OUT[1].NAME_NAT[ ] STRING ations, any characters in the string not
overwritten (e.g. not visible in the
monitor window) will be retained.
The example illustrated in Fig. 4 shows the assignment of the physical outputs and the signal
states after initialization.
State after
initialization:
Output 10
LOW (logic 0)
Output 15
HIGH (logic 1)
Array “A_WLD_OUT[n] INI” contains the initial value when the INIT routine is running before
reaching the block coincidence movement.
*) The value for the “NO” element can be entered as a decimal number (without “H” for
HEX). Because of internal system requirements, this value is converted to the correspond-
ing hexadecimal value when the data are loaded into the controller.
Example: ...{NO ’10’...
becomes
...{NO ’HA’
If “NO” is set to “0” (zero), the output is deactivated and is ignored during execution of the
program.
Fig. 5 shows an example of a signal table from the file $config.dat for a digital output. The
A_O_MODE[1] element with the value ’H3’ refers to array 3 in the “DIGITAL OUTPUTS”
index table (A_WLD_OUT[16]) and thus to the physical output configured in it.
An output can be static (PULSE_TIME 0.0) or can be output in the form of a pulse, in which
case the pulse duration is programmed in seconds. For example, PULSE_TIME 0.3
corresponds to a pulse duration of 0.3 seconds.
Example of the entries using the menu function “Monitor -- Variable -- Single”:
Variable Type Characteristics
Assignment to element in index table,
A_O_MODE1[1].NO INT
e.g. “1” (default: 0)
Pulse duration in seconds
A_O_MODE1[1].PULS_TIME REAL
Default: 0.0 (static)
Active state
A_O_MODE1[1].STATE BOOL
Default: FALSE
Entry in index table Entry in signal table Physical output state after
“A_WLD_OUT[n].INI” “<Signal name>.NO” Initialization Activation
FALSE FALSE LOW LOW
FALSE TRUE LOW HIGH
TRUE FALSE HIGH LOW
TRUE TRUE HIGH HIGH
Fig. 6 Example of signal configuration with signal table and index table
In the “outputs weld start” signal table, assign the value “H1” to the “NO” variable in the first
line “A_O_WLD_STRT[1]”. The signal level should be static, so enter the value “0.0” for
“PULS_TIME”. Finally assign the value “TRUE” to the “STATE” variable. Any number of
signals can be assigned to each output.
Fig. 7 shows the linking of the A_WLD_OUT[1] output to the signals A_O_WLD_STRT[1]
(weld start) and O_FLT_ARC_ON[1] (fault during the ARC ON command):
; outputs weld start Signal table
A_O_WLD_STRT[1]={NO ’H1’,PULS_TIME 0.0,STATE TRUE}
A_O_WLD_STRT[2]={NO ’H2’,PULS_TIME 0.0,STATE TRUE}
A_O_WLD_STRT[3]={NO ’H0’,PULS_TIME 0.0,STATE TRUE}
Status table:
Initialization LOW
A_O_WLD_STRT[1] HIGH
Output 10 A_O_FLT_ON[1] LOW
Fig. 7 Example of signal configuration with signal table and index table
The signal tables provide the option of defining up to three signals, i.e. of activating up to three
different physical outputs with different signal levels by means of one event.
In the event of absent or incorrect peripheral interface signals, entries in the index and signal
tables (addresses, value assignments) should always be checked first, before carrying out an
extensive search for faults in the hardware.
Example of corresponding entries using the menu function “Monitor -- Variable -- Single”:
Variable Type Characteristics
Assignment of the physical input, e.g.
A_WLD_IN[1].IN_NR INT
“2” (default: 0)
20 characters between “ ”; any char-
A_WLD_IN[1].NAME_NAT[ ] STRING
acters not overwritten will be retained.
All “IN_NR” array elements are set to “0” at the factory, meaning they are inactive.
If you make any changes to the “NAME_NAT” comments (signal names) directly in the
$config.dat file, please ensure that the string between the quotation marks (“ ”) has a
maximum length of 20 characters.
Input 2
Input 12
Fig. 9 Example of signal configuration with signal table and index table
In the example shown in Fig. 9, A_WLD_IN[1] is assigned to physical input no. 2 and
A_WLD_IN[2] to physical input no. 12.
The following example shows the signal table for a digital input. The A_I_WLD_COND[1].NO
element with the value ’H1’ refers to field 1 of the “FOLD ArcTech Inputs” index table
(A_WLD_IN[ ]) and thus to the physical input configured in it.
$config.dat ;inputs as condition before weld can start
DECL FCT_IN_T A_I_WLD_COND[3]
A_I_WLD_COND[1]={NO 1,STATE TRUE} ; source ok
A_I_WLD_COND[2]={NO 10,STATE TRUE} ; water available
A_I_WLD_COND[3]={NO 11,STATE TRUE} ; gas available
Example of corresponding entries using the menu function “Monitor -- Variable -- Single”:
Variable Type Characteristics
Assignment of the physical input, e.g. “1”
A_I_WLD_COND[1].NO INT
(default: 0)
Active state
A_I_WLD_COND[1].STATE BOOL
Default setting: FALSE
The value for the “NO” element can be entered as a decimal number (without “H” for
HEX). Because of internal system requirements, this value is converted to the corres-
ponding hexadecimal value when the data are loaded into the controller, for example:
...{NO 10 ...
becomes
...{NO ’HA’ ...
The wait time for digital input signals is limited by the value of the “A_TIME_OUT1” variable.
$config.dat REAL A_TIME_OUT1=200.0 ; TIMEOUT for digital input
[10 ms * 200 -> 2.0 sec]
After this configurable wait time, the program is stopped and a corresponding error message
is displayed in the message window.
Entries using the menu function “Monitor -- Variable -- Single”:
Variable Type Characteristics
Wait time 10 milliseconds [ms]
A_TIME_OUT1 REAL
For value 200 = [10 ms * 200] = 2000 ms = 2 s
Input 2
HIGH signal
Input 12
HIGH signal
Input 17
LOW signal
Other signal tables may also contain references to the “ArcTech Inputs” index table.
Editing the file “A10_User.src” requires sound knowledge of the KRL programming
language and the “KUKA.ArcTech Analog” technology package.
The user can adapt and modify the subroutines in the file “A10_User.src” using a text editor.
In addition to this, a number of error handling routines are available.
Commands are divided into an advance run section and a main run section, with switching
of the weld parameters always occurring in the main run.
It is important to note that the advance run sections must not contain commands that trigger
an advance run stop.
END ;(A10_USR_INIT)
A10_USR_PreArcOn
The routine “A10_USR_PreArcOn” is called in the advance run section of the “ARC ON”
command.
END ;(A10_USR_PreArcOn)
A10_USR_START1
The routine “A10_USR_START1” can be called before any weld start, i.e. when the “ARC
ON” command is executed or in the case of a restart following a fault. The ignition data set
is accessed via “A_S_PARA_ACT” elements (file type A_STRT_T).
END ;(A10_USR_START1)
A10_USR_START2
The routine “A10_USR_START2” can be called before any weld start, i.e. when the “ARC
ON” command is executed or in the case of a restart following a fault.
END ;(A10_USR_START2)
A10_USR_PreArcSwi
The routine “A10_USR_PreArcSwi” is called in the advance run section of the “ARC SWI”
command.
END ;(A10_USR_PreArcSwi)
A10_USR_ArcSeam
The routine “A10_Usr_ArcSeam” can be called in the “ARC SWI” and “ARC OFF” commands
by means of the trigger integrated into the technology package, i.e. on the weld path to the
end point. The weld data set is accessed via “A_W_PARA_ACT” elements (file type
A_WELD_T).
END ;(A10_USR_ArcSeam)
A10_USR_PreArcOff
The routine “A10_USR_PreArcOff” is called in the advance run section of the “ARC OFF”
command.
END ;(A10_USR_PreArcOff)
A10_USR_ArcOff1
The routine “A10_USR_ArcOff1” is called immediately before the weld start signal is with-
drawn in the “ARC OFF” command at the end of the seam. The end data set is accessed
via “A_E_PARA_ACT” elements (file type A_END_T).
END ;(A10_USR_ArcOff1)
A10_USR_ArcOff2
The routine “A10_USR_ArcOff2” is called immediately before the weld start signal is with-
drawn in the “ARC OFF” command.
END ;(A10_USR_ArcOff2)
A10_USR_PLC_INIT
This routine is called in the initialization section of the Submit interpreter. The necessary
declarations must be made in the file “A10_User.dat”.
END ;(A10_USR_PLC_INIT)
A10_USR_PLC_Task
This routine is permanently called in a loop (Call by A10(#PLC_LOOP).
END ;(A10_USR_PLC_Task)
Robot error
A10_USR_IRSTOPMESS
This routine is called if the robot is switched off (IR_STOPMESS reaction, such as drives off,
safety gate open, etc.)
END ;(A10_USR_IRSTOPMESS)
A10_USR_TechStop
This routine is called in the event of a TechStop.
END ;(A10_USR_TechStop)
A10_USR_TechStopSub1
This routine is called immediately before the system is switched off in the event of a fault.
END ;(A10_USR_TechstopSub1)
A10_USR_TechStopSub2
This routine is called immediately after the system is switched off in the event of a fault.
END ;(A10_USR_TechstopSub2)
Seam error
A10_USR_SeamError
This routine is called in the event of a seam error.
END ;(A10_USR_SeamError)
6.1.1 Manual activation and deactivation of the weld process (FLY ARC)
During a running welding process it is possible to switch welding on or off with the status key
HOT/COLD; the controller monitoring functions (as well as the keyswitch) remain active.
When it detects actuation of the status key HOT/COLD, the submit interpreter triggers a pulse
command, thereby triggering Interrupt 5 at the R1 level. The current status is used to detect
whether welding should be switched on or off.
Options
The following options are available for activation/deactivation of the weld process while a
welding program is running ($config.dat):
$config.dat DECL A_APPL_T A_APPLICAT=#THIN ;#thin,#thick
DECL A_BOOL_T A_STRT_BRAKE=#ACTIVE ;BRAKE option at ARC_START
(HPU control)
DECL A_BOOL_T A_END_BRAKE=#ACTIVE ; BRAKE option at ARC_OFF
(HPU control)
All status keys are deactivated in External mode (or if the Submit interpreter is stopped)
for safety reasons!
The keyswitch is always evaluated during ignition in the default configuration as long as the
ARC button has been set to ACTIVE.
The keyswitch can also be configured in such a way that the system can instantly be
switched off during operation.
Condition Variable
Robot on the path $ON_PATH=TRUE *
Process enabled PROC_ENABLE=TRUE
Options bits (general enable)
Process enabled in T1 PROC_IN_T1=TRUE
Options bits (only relevant in T1 mode)
Keyswitch See description “ARC ON”
ArcTech OPTION A10_OPTION=#ACTIVE
(default: #DISABLED)
The ignition parameters, weld mode, and power source readiness are specified in the
advance run.
The condition in this example is met as soon as input no. 11 is set to HIGH. No other inputs
are checked.
The link set out above sets physical output no. 7 to TRUE. No other outputs are activated.
The link set out above sets output no. 7 to FALSE. No other outputs are activated.
Physical output 2 activates the weld start while physical output 4 activates the gas flow.
Three physical outputs are set here in parallel: output 3 to LOW, output 8 to LOW, and
output 9 to HIGH:
In order to complete activation of the ramp function, the HMI then has to be reinitialized.
WELDSET 1
WELDSET 2
Distance
Ramp length
Ramp length
Ramp length
0 to 25 mm
Select the ramp length so that the distance to the following point is long enough.
If the distance between the points is not long enough, the ramp will ”break” and the output will
take on unexpected values.
This function may not be used during sensor operation with “KUKA.ArcSense”
(TRACK command); here, the ramp length has to be set to 0 or the ramp function has
to be switched off (A_RAMP_OPTION=FALSE).
When welding with short distances between points, approximate positioning may no longer
be possible. The ramp function should also be deactivated in this case.
ARC ON
Initialization
Options
(e.g. Output of
aluminum) ignition
parameters
PRE_ARC_ON( ) A_I_WLD_COND[ ]
Early gas
preflow A_O_GAS_PRE[ ]
A_I_EN_W_EXT[ ] Enabling test
Only with the option:
A_PR_GAS_OPT=TRUE
Ignition
A_O_ARC_FLT[ ]
A_O_MODE_n[ ] position
reached A_O_FLT_ON[ ]
A_O_FLT_SIGN[ ]
A_O_GAS_PRE[ ] Gas preflow
Messages
A_O_WLD_STRT[ ] Ignition
A_O_ACK_FLT[ ]
N
Ignition attempts
A_I_STRT_MOV[ ] Arc on according to
configuration
Y
A_O_POST_OFF[ ]
A_O_POST_ON[ ]
ARC_START( ) N
Ignition time
Beside it you see the signal for weld start (A_WLD_OUT[1]) -- this is the point in time at which
wire feed is activated -- followed by the “Current flowing” signal from the peripheral interface
(A_I_STRT_MOV[ ]), meaning that the arc is now established following successful ignition.
At the conclusion of the ignition time, a transition is made from the start parameters to the
weld parameters, as you can see from the curves for both analog channels (setpoint values
for weld voltage and wire feed -- channels 1 and 2). The weld parameters (W parameters)
are contained in the weld data set of the “ARC OFF” or “ARC SWITCH” command that follows
the “ARC ON” command.
If an arc is established following ignition, the weld process monitoring function is activated
after a time delay set by means of the A_CTRL_DELAY variable. The “Current flowing” signal
(A_I_STRT_MOVL) from the weld power source is decisive for this. The default time is 1200
milliseconds.
The default time can be changed with the menu function “Monitor -- Variable -- Single”.
Variable Default (ms)
A_CTRL_DELAY 1200
To avoid disruptions, this value should not be too low. If the setting is too high, the peripheral
interface signals cannot be monitored during this time.
ARC SWITCH
Initialization
Weld mode
PS / MM
A_O_MODE1[]
A_O_MODE2[]
Output of
weld
Retrieve data from
parameters
FIFO buffer
WELD_ON_SEAM( )
Mechanical
weaving on *)
Thermal
weaving on *)
Activate cyclical
analog output
End ARC
SWITCH
*) If configured accordingly
Approximate positioning should be used for motions in “ARC SWITCH” commands if exact
positioning between individual seam sections is not absolutely essential.
Ignition
parameters Weld parameters
Weld data set 1 Weld data set 2
Wire feed setpoint value
Analog
channels
Weld voltage setpoint value
Weld start
Current flowing
Gas flow
You can recognize the changes to the analog channel setpoint values (wire feed, weld
voltage) during the transitions from “ignition parameters” to “weld data set 1”, as well as from
“weld data set 1” to “weld data set 2”.
Ignition parameters
Weld parameters
Weld data set 1 Weld data set 2
Wire feed setpoint value
Analog
Weld voltage setpoint value channels
Weld start
MODE (PS / MM)
Current flowing
Gas flow
Ignition parameters
Weld parameters
Weld data set 1 Weld data set 2
(default) (thermal weaving)
Wire feed setpoint value
Weld start
Current flowing
Gas flow
Approximate positioning is not possible for “ARC OFF”; motions are exactly positioned to
each point.
If the wire is not separated from the workpiece at the conclusion of the welding process, the
power source issues the A_I_BRN_FREE signal to the physical input (here A_WLD_IN[7]).
This triggers the process for burning the wire free.
The burnfree data must also be set. This variable is located in the A10.DAT file:
In this example, the burnfree voltage is set to 26.0 volts and the wire feed to 8 m/min in
channel 1. The other channels are not configured here and remain available for further
applications.
Corresponding entry using the menu function “Monitor -- Variable -- Single” in the
“$config.dat” file:
Variable Value Characteristics
A_BRN_FREE_T 0.2 Pulse duration in seconds (default: 0.2)
A_BRN_FR_LIM 3 Number of burnback attempts (default: 3)
ARC OFF
Initialization
PRE_ARC( )
(advance run section) Preparation of Filling of FIFO buffer,
parameters for precalculation
welding,
mechanical
and thermal
weaving
Robot Mechanical
motion weaving on *)
Thermal
weaving on *)
Calculation of
early activation of
gas postflow time
FINISH_SEAM( ) Y
Output of
end crater
parameters
*) If configured accordingly
[1--2]
FINISH_SEAM( )
Welding off A_O_SEAM_END[ ]
Burnback N
time
Y
A_WLD_ACTIV=#ACTIVE
Flag N
Gas postflow on
(Pulse command)
Initialization
$TIMER[2]
N A_I_WELD_END[ ]
Fault routine Arc off
Burnfree
option
A_O_POST_ON[ ]
Burnfree
A_O_POST_OFF[ ]
Wire free N
/ Cancel
Gas postflow
A_WLD_ACTIV=#IDLE
Initialization and A_COLD_SEAM=#IDLE
reset flags
End
ARC Off
Input groups
A_I_WELD_END[ ] Current end / power source deactivation
process
A_I_BRN_FREE Checks that wire is free or forces burnfree
if option is active
(A_BRN_FR_OPT=#ACTIVE)
Output groups
A_O_MODE1/2[ ] Weld mode (pulse/MigMag),
max. 3 outputs
A_O_POST_ON[ ] Early activation of gas postflow
(max. 3 outputs)
A_O_POST_OFF[ ] Configuration of gas postflow
(max. 3 outputs)
A_O_SEAM_END[ ] Initiates power source deactivation
A_O_FLT_SIGN[ ] Fault signal
A_O_ACK_FLT[ ] Acknowledge fault
A_O_WLD_STRT[ ] WELDSTART generated in event of forced
burnfree procedure
Burnback time
Crater time Gas postflow time
Current flowing
Fig. 21 Diagram: standard mode, with end crater, burnback, and gas postflow
On the left in the weld parameter range, the constant setpoint values for wire feed and weld
voltage are shown. In the following end parameter range, the setpoint values of the analog
reference voltages increase in accordance with the values programmed in the parameter list.
The end parameter range is divided into three sections:
G Crater time
G Burnback time and
G Postflow time
Wire feed is switched off at the falling edge of the “Weld start” signal. As a result, the arc goes
out, as can be seen from the falling edge of the “Current flowing” signal, which is delayed by
approximately 0.1 second.
In accordance with the parameter settings, gas flow is still maintained for a specific time.
The value that is set influences the number of input boxes in the start, weld and end data
parameter lists. If you set the A_ACT_AN_MAX variable to a value >2, a correspondingly
greater number of channels (n--2) are available and thus more input boxes for setting
parameters.
Changes to the A_ACT_AN_MAX variable only become active after the system is restar-
ted or the HMI is reinitialized.
Channel 1 is assigned by the manufacturer to the weld voltage parameters and channel 2
to the wire feed parameters. Channels 3 through 8 are not used and are thus freely available.
Analog outputs that are not required are deactivated by specifying “0”.
To activate further outputs, change the variable A_ACT_AN_MAX=n accordingly.
Channel numbering must be consecutive. In other words, channel 3 may only be assigned
if channels 1 and 2 are already used.
The analog outputs defined with A_ACT_AN_MAX must be addressed in the declaration
section DECL INT A_ANAOUT_NO[8].
For example, if A_ACT_AN_MAX has the value 4, A_ANAOUT_NO[1] ... A_ANAOUT_NO[4]
may not have the value 0.
A_ANA_MAX_D[1,1]=2
Mode Number of characteristic points
Channel
If only one welding mode (either pulse or MIGMAG) is going to be used, we recommend
making all configuration entries and parameter settings for mode 1 and mode 2 identical
in the $CONFIG.DAT file.
In this way you ensure that accidentally switching from the welding mode “PS” to “MM” or
vice versa while programming inline forms does not result in errors.
The next example shows the characteristic with assignment of the parameters PARA and VAL
in the file $CONFIG.DAT. PARA is the value Voltage for the weld voltage (S, W and E
parameter lists), and VAL corresponds to 1/10 of the analog control voltage.
VAL U (volts)
1.00 10.000
0.8062 8.062 2
A further example shows a linear characteristic for the wire feed (channel 2). Here, the value
(VAL) of 0.0631 at characteristic point 1 corresponds to a control voltage of 0.631 volts,
resulting in a wire feed rate of 50 inch/min and the value (VAL) 0.9511 at characteristic point
2 corresponds to a control voltage of 9.511 volts for a wire feed rate of 770 inch/min.
Control voltage Wire feed
Point
(volts) (inches/minute)
1 0.631 50
2 9.511 770
The next example shows the corresponding characteristic with assignment of the
parameters PARA and VAL in the file $CONFIG.DAT. In this case PARA is the Wire Feed
value for the wire feed rate in inch/min (S, W and E parameter lists); “VAL” corresponds to
1/10 of the analog control voltage.
VAL U (volts)
1.00 10.000
0.9511 9.511 2
0.0631 0.631 1
PARA
0 50 770 (inches/minute)
DECL A_ANA_DEF_T A_ANA_DEF[2,8,5] ($CONFIG.DAT)
...
;Mode1 Channel2 wire feed [IPM]
A_ANA_DEF[1,2,1]={PARA 50.0,VAL 0.0631}
A_ANA_DEF[1,2,2]={PARA 770.0,VAL 0.9511}
Parameters are set for the individual characteristic points in the block DECL A_ANA_DEF_T
A_ANA_DEF... of the $CONFIG.DAT file. In the above example with two characteristic
points, the following must be entered for channel 1 (voltage) and channel 2 (wire feed):
DECL A_ANA_DEF_T A_ANA_DEF[2,8,5] ;WELD_Mode,Channel,
Points of controller line
(For the weld voltage)
;Mode1 Channel1 command value
A_ANA_DEF[1,1,1]={PARA 0.0,VAL 0.0369}
A_ANA_DEF[1,1,2]={PARA 80.0,VAL 0.8062}
A_ANA_DEF[1,1,3]={PARA 40.0,VAL 0.0} (*)
A_ANA_DEF[1,1,4]={PARA 41.0,VAL 0.0} (*)
A_ANA_DEF[1,1,5]={PARA 42.0,VAL 0.0} (*)
...
(For the wire feed)
;Mode1 Channel2 wire feed [IPM]
A_ANA_DEF[1,2,1]={PARA 50.0,VAL 0.0631}
A_ANA_DEF[1,2,2]={PARA 770.0,VAL 0.9511}
A_ANA_DEF[1,2,3]={PARA 1001.0,VAL 0.0} (*)
A_ANA_DEF[1,2,4]={PARA 1002.0,VAL 0.0} (*)
A_ANA_DEF[1,2,5]={PARA 1003.0,VAL 0.0} (*)
...
Explanation
Example of the entry of the characteristic parameters PARA and VAL with the menu function
Monitor - Variable - Modify:
Variable Type Characteristics, value
A_ANA_D_DEF[1,1,2].PARA REAL Value for “PARA”, e.g.: 80.0
A_ANA_D_DEF[1,1,2].VAL REAL Value for “VAL”, e.g.: 0.8062
0.50 5.00 3
VAL 1.0 ≙ 10 volts
0.26 2.60 2
8 Mechanical weaving
8.1 Fundamentals
In mechanical weaving, the torch moves across the seam and is thus superposed on the
continuous--path motion of the robot arm. The torch can also be rotated in the weave plane
(but not the weave plane itself if a through--the--arc seam tracking sensor is being used or
a Track command is being executed).
Mechanical weaving is executed in the coordinate system TTS (tool--based technological
system). The weave function is thus not dependent on whether welding is by the “forehand”
or “backhand” technique. A deliberately inclined position of the torch for asymmetrical
distribution of the heat has, in principle, no effect on the weaving.
The tool must be calibrated in 6D mode, with the +x direction of the tool in the tool
coordinate system corresponding to the wire outlet.
Undesirable effects may otherwise result, such as a rotation of the weave plane by
90 degrees, for example.
Z axis
Y axis
X axis
Xwz
The TTS is calculated every time a CP motion is executed. If the X axis of the tool
coordinate system and the path tangent are parallel, the TTS cannot be generated. This
triggers dynamic braking and the error message “TTS NOT EXISTING”.
In this case, a corresponding reorientation of the tool is required as well as reprogramming
of the motion.
s
Weave amplitude
Weave length
Weld direction
s
No weave
Triangle
Double triangle
Trapezoid
Double trapezoid
Unsym.trapezoid
Spiral *)
Double 8
*) In order to achieve circular weave motions with the Spiral weave pattern selected, the
weave amplitude needs to be half the set weave length.
Edge weave
bottom Weave length
Weld direction
z x
s
y
Weld direction
SWITCH FIGUR
n = Control points (CPNUM)
CASE 1 ;triangle
IF A_FG_MECH1>0 THEN Y 2
$TECH[A_FG_MECH1].FCT.ORDER=1 1
$TECH[A_FG_MECH1].FCT.CPNUM=4
$TECH[A_FG_MECH1].FCT.CPS1.X1=0.0
$TECH[A_FG_MECH1].FCT.CPS1.Y1=0.0 0.5 0.75 1.0 X
$TECH[A_FG_MECH1].FCT.CPS1.X2=0.25 0.0 0.25
1 4
$TECH[A_FG_MECH1].FCT.CPS1.Y2=1.0
$TECH[A_FG_MECH1].FCT.CPS1.X3=0.75 3
$TECH[A_FG_MECH1].FCT.CPS1.Y3=--1.0 --1
$TECH[A_FG_MECH1].FCT.CPS1.X4=1.0
$TECH[A_FG_MECH1].FCT.CPS1.Y4=0.0
ENDIF
The value for X can be between 0.0 and 1.0. Xn=1.0 corresponds to the weave length entered
in the W--parameter list 2/4 (Mechanical Weaving), i.e. the length over which a pattern is
executed.
The value for Y can be between --1.0 and 1.0. Yn=1.0 corresponds to the lateral deflection
(weave amplitude -- zero to peak) entered in the W--parameter list 2/4 (Mechanical Weaving).
The weave length X, the lateral deflection Y, and the angle of the torch in relation to the
welding plane can be programmed for each weave pattern in the W--parameter list 2/4
“Mechanical Weaving” with menu prompting.
Two practical functions (for thin sheet welding, for example), namely spiral weaving and
figure--eight weaving, are already included in the technology package. You can also develop
your own patterns. The following diagram illustrates the mode of operation of the function
generator using the example of spiral weaving.
Weave width
Weave length
1) Lateral deflection (amplitude) = half weave width
2) Deflection in direction of path = ¦ weave length
The “Weave amplitude” value is defined as “zero to peak”, i.e. it corresponds to half the
weave width (peak to peak).
The spiral form results because the torch is moved by the amount of the weave length (from
X=0 to X=1) during one period (360°) in the direction of welding.
0 Weld direction
0 1
1
sin(x) cos(x)
6 X
0
1 1,0
$TECH[A_FG_MECH2]...
(X 1 ... 6 ; Y 1 ... 6) X
--1 0
4 5 1,0
Y Resulting spiral
1
2 3
2’ 3’
(--Y’) (Y’)
1 6, 6’ X --1
0 1’ 2’ 5’ 6’
1’
5’ 4’
--1
Weave length 5 4
The control points for the “Spiral” weave pattern are defined in the “Arc_weave.src” file. The
parameters for the lateral deflection are stored in the first block (...MECH1...).
CASE 6 ;spiral
IF A_FG_MECH1>0 THEN
$TECH[A_FG_MECH1].FCT.ORDER=1
$TECH[A_FG_MECH1].FCT.CPNUM=6
$TECH[A_FG_MECH1].FCT.CPS1.X1=0.0
$TECH[A_FG_MECH1].FCT.CPS1.Y1=0.0
$TECH[A_FG_MECH1].FCT.CPS1.X2=0.166666
$TECH[A_FG_MECH1].FCT.CPS1.Y2=1.0
$TECH[A_FG_MECH1].FCT.CPS1.X3=0.333333
$TECH[A_FG_MECH1].FCT.CPS1.Y3=1.0
$TECH[A_FG_MECH1].FCT.CPS1.X4=0.666666
$TECH[A_FG_MECH1].FCT.CPS1.Y4=-1.0
$TECH[A_FG_MECH1].FCT.CPS1.X5=0.833333
$TECH[A_FG_MECH1].FCT.CPS1.Y5=-1.0
$TECH[A_FG_MECH1].FCT.CPS1.X6=1.0
$TECH[A_FG_MECH1].FCT.CPS1.Y6=0.0
ENDIF
The second block (A_FG_MECH2...) contains the parameters for the deflection in the
direction of the welding path:
IF A_FG_MECH2>0 THEN
$TECH[A_FG_MECH2].FCT.ORDER=1
$TECH[A_FG_MECH2].FCT.CPNUM=6
$TECH[A_FG_MECH2].FCT.CPS1.X1=0.0
$TECH[A_FG_MECH2].FCT.CPS1.Y1=-1.0
$TECH[A_FG_MECH2].FCT.CPS1.X2=0.083333
$TECH[A_FG_MECH2].FCT.CPS1.Y2=-1.0
$TECH[A_FG_MECH2].FCT.CPS1.X3=0.416666
$TECH[A_FG_MECH2].FCT.CPS1.Y3=1.0
$TECH[A_FG_MECH2].FCT.CPS1.X4=0.58
$TECH[A_FG_MECH2].FCT.CPS1.Y4=1.0
$TECH[A_FG_MECH2].FCT.CPS1.X5=0.916666
$TECH[A_FG_MECH2].FCT.CPS1.Y5=-1.0
$TECH[A_FG_MECH2].FCT.CPS1.X6=1.0
$TECH[A_FG_MECH2].FCT.CPS1.Y6=-1.0
ENDIF
In order to achieve a phase shift of 180°, it is merely necessary to change the parameters
for control points Y2 and Y3. The required changes have been made in the following list and
are underlined for ready identification.
The first value for X must be 0 (zero) and the last value must be 1. Multiple X values that
are identical cannot be used. The deflection should always begin at 0 in order to prevent
unnecessary acceleration.
The number of control points determined (CPNUM) as well as the X and Y values can be
entered, for example, in the block “CASE 8 ;default as minimums and flag for beginning” of
the WEAVDEF.SRC file, as shown in the following.
With higher weave frequencies, undesirable effects are liable to result under certain
circumstances (depending on the tool design and/or tool orientation). With weave
frequencies > 4 Hz, the motion characteristics of the robot should therefore be individually
tested in each case.
Of significance for the correct functioning of the robot is the weave frequency, which
results from the programmed path velocity (travel speed) and the weave length. The
following relationships exist between these parameters:
These relationships are depicted graphically in the nomogram shown in Fig. 37.
90 degrees
Weave amplitude
Torch plane
Torch
Mechanical weaving
9 Thermal weaving
Thermal weaving may not be used in conjunction with the “KUKA.ArcSense” through--the--
arc tracking sensor option.
9.1 Fundamentals
In conventional welding processes, the values for the weld voltage and the wire feed rate
remain constant. Thermal weaving can be used for certain applications. The weld voltage
and the wire feed rate are periodically and synchronously altered in this instance, thus
producing a seam with weld metal that varies periodically according to these changes.
The robot--specific “Thermal weaving” mode has nothing in common with the “Pulsing”
option offered by welding equipment.
A precondition for the “Thermal weaving” function is that the value of the variable
A_TH_WEAVE_OPT is set to TRUE.
In order to ensure synchronization between mechanical and thermal weaving, the variable
$TECH_ANA_OFF[B] must be set to TRUE in \STEU\MADA\$CUSTOM.DAT.
Thermal weaving
Triangle Trapezoid
(Triangle) (Trapezoid)
Length Length
Weld voltage (1 period) Weld voltage (1 period)
(volts) (volts)
Max. voltage Max. voltage
(setting in (setting in
“Wn”, page 1) “Wn”, page 1)
Min. voltage Min. voltage
(setting in (setting in
“Wn”, page 3) “Wn”, page 3)
Ignition parameters
Weld parameters
Weld data set 1 Weld data set 2
(default) (Thermal weaving)
Wire feed setpoint value
Weld start
Current flowing
Gas flow
(--1.0) (--1.0)
--Y --Y
X X
Weave
length
Wire feed Wire feed
(inches/minute) (inches/minute)
Max. feed Max. feed
Y (1.0) Y (1.0)
Min. feed Min. feed
--Y (--1.0) --Y (--1.0)
X X
Direction of path Direction of path
(X axis) (X axis)
If the phase of the thermal weave curve is shifted by 180° in relation to the mechanical weave
curve, the combination shown in Fig. 43 will result:
+
Max. voltage,
max. wire feed
Min. voltage,
-- min. wire feed
Mechanical: Triangle ϕ = 180° Mechanical weaving Trapezoid ϕ = 180°
Thermal: Triangle ϕ = 0° Thermal weaving Trapezoid ϕ = 0°
Here, either the thermal weave curve or the mechanical weave curve can be changed in the
“WEAV_DEF.SRC” file.
+ Max. voltage,
max. wire feed Max. voltage,
max. wire feed
Min. voltage,
0 Min. wire 0
feed
Max. voltage,
Min. voltage, max. wire feed
min. wire feed
Mechanical: Triangle ϕ = 0° Mechanical weaving Trapezoid ϕ = 0°
Thermal: Double triangle ϕ = 270° Thermal weaving Double triangle ϕ = 270°
Compared to the mechanical weave frequency, the thermal weave frequency is twice as high
and shifted in phase by 270° 〈--90°). In this way, the weld voltage and wire feed rate change
in the course of one period according to the curves shown. In the areas of maximum
mechanical lateral deflection, welding is executed using the parameters entered in the
W--parameter list 1/4 “Primary Weld” (max. voltage and wire feed) whereas the parameters
entered in the W--parameter list 3/4 “Thermal Weaving” (min. voltage and wire feed) are used
in the area of the weld root.
Fig. 45 shows another example in which the thermal weave frequency is twice as high as the
mechanical weave frequency and shifted in phase by 90°.
+
Max. voltage, Min. voltage,
max. wire feed min. wire feed
Max. voltage,
0 Max. wire 0
feed
Min. voltage,
Min. voltage, min. wire feed
min.
-- wire feed
Mechanical: Triangle ϕ = 0° Mechanical weaving Trapezoid ϕ = 0°
Thermal: Double triangle ϕ = 90° Thermal weaving Double triangle ϕ = 90°
In the area of the weld root, welding is executed using the parameters entered in the
W--parameter list 1/4 “Primary Weld” (max. voltage and wire feed), while the parameters
entered in the W--parameter list 3/4 “Thermal Weaving” (min. voltage and wire feed) are used
in the areas of maximum mechanical lateral deflection.
A_ANA_MAX_D[1,1]=2 (DEFAULT)
A_ANA_MAX_D[1,2]=2 (DEFAULT)
A_ANA_MAX_D[2,1]= 2 (DEFAULT)
A_ANA_MAX_D[2,2]= 2 (DEFAULT)
Configuration of error collection as indication of operational readiness, of current flow for start
of robot motion, and of seam fault.
BOOL RE_INITIALIZE=TRUE
;TRUE: TPARC.DLL forced to new initialization MIN/MAX and control-
ler line parameters
After the above settings have been made, the HMI has to be reinitialized or a cold start has
to be forced.
The resources described in Sections 11.2.2, 11.2.3 and 11.2.4 can be customized.
A status message appears in the message window after every ignition attempt. If the number
of ignition attempts (value defined in A_MAX_RETRY) is exceeded, an acknowledgement
message appears.
The entry A_FLT_SV_FCT=0 corresponds to the “CASE 0” fault service function in the
FLT_SERV.SRC file. This procedure is suitable, for instance, for cutting through insulating
oxide layers (for example during aluminum welding) when the wire contacts the workpiece
in order to allow a fault--free ignition process in a restart.
SWITCH A_FLT_SV_FCT
;===========================================
; FAULT SERVICE FUNCTION (additional START-Error )
;===========================================
CASE 0
IF A10_OPTION ==#ACTIVE THEN
IF ARC_ON_FLT==#ACTIVE THEN
ELSE
MOVE_TCP ({X -20.0,Y 0.001,Z 0.001} )
ENDIF
ENDIF
;*****************
; local subroutine
;*****************
F=$NULLFRAME
F.X=TCP_IN.X
F.Y=TCP_IN.Y
F.Z=TCP_IN.Z
LIN $POS_ACT:F
END
*)
*) *)
X
If this fault service function is implemented, it is essential to make sure that there
is sufficient clearance for the torch to be retracted.
If this is not possible, reduce the distance “X” accordingly -- MOVE_TCP ({X -20.0,Y
1.0,Z 1.0} ).
When torch angles are measured, the position of the gas nozzle axis (tip of the torch) is
the crucial value for establishing a proper reference plane (important, for example, in
mechanical weaving).
The tool must be calibrated in such a way that the current nozzle with the protruding
wire corresponds to the +X direction in the tool coordinate system. Otherwise, there
is the risk of a collision with the workpiece.
Variable Value
A_CTRL_DELAY 1200 ms (default) Monitoring delay
The available peripheral interface signals depend on the type of welding controller being used.
The entered signal states (STATE “TRUE” or “FALSE”) must each correspond to the set
“GOOD” status that exists during troublefree operation.
The tool must be calibrated in such a way that the current nozzle with the protruding
wire corresponds to the +X direction in the tool coordinate system. Otherwise, there
is the risk of a collision with the workpiece.
Voltage dips in the mains voltage supply are also monitored using this interrupt routine.
12.3.1 Deactivation
Once the robot fault is detected, the fault signal A_O_FLT_SIGN[ ] is set during welding.
If a torch cleaning process activated by the flag A_CLEANER=#ACTIVE is detected at the
same time, this is deactivated in accordance with the signal group A_O_FLT_APPL[ ].
The current is disconnected, shielding gas continues to flow and the mechanical weaving is
interrupted. The fault signal A_O_FLT_APPL[ ] is also set (only in the case of hot welding).
The weld fault counter is incremented and an error message is generated; this message is
deleted once it has been manually acknowledged. A_O_ACK_FLT[ ] also triggers an
acknowledgement pulse and repositions the robot to $POS--RET.
12.3.2 Reactivation
Acknowledgement of the error message results in reactivation. Depending on the option set
(A_APPLICAT=#THICK or A_APPLICAT=#THIN) ignition or weld parameters are then
generated. The relevant weave process is reactivated along with the weave sensor if one
is being used. Ignition is always accompanied by gas preflow.
Weld start
Within this sequence, you can see on the left the falling edge of the “Current flowing” signal
(A_I_STRT_MOV[ ]) coming from the welding peripheral interface. The result is that the
robot controller generates the fault signal A_O_FLT_APPL[ ] as well as the signal used for
the fault message on the control panel, A_O_FLT_SIGN[ ]. Then the “Gas flow” signal
(A_WLD_OUT[2]) is also canceled.
Acknowledging the message triggers the pulse A_O_ACK_FLT[ ], thus resetting the fault
signal. In the diagram, you can recognize the restart process after the fault has been
acknowledged. An ignition process begins using the set ignition parameters with the signals
“Gas flow” (A_WLD_OUT[2]) and “Weld start” (A_WLD_OUT[1]). The peripheral interface
signal “Current flowing” (A_I_STRT_MOV[ ]) shows that ignition was successful; the
process is continued with the set weld parameters.
Fig. 48 shows the control signals for weld start, current flowing, and gas flow when an
interpreter stop is triggered with a subsequent restart. The interpreter stop signal
(A_O_IR_STOP) is also shown. The change from the weld parameters to the ignition
parameters and back again is evident from the characteristics of the analog signals for the
wire feed setpoint and voltage setpoint.
The restart described above is not possible if another fault situation or fault service function
is active at the same time, or has not been properly concluded.
Start
...SPS.SUB
START LOOP
Folds contain
program calls or
Folds of other program codes
technology packages
Endless loop
(LOOP)
N A10 option
TRUE
End
Detail from
PLC task
“...SPS.SUB”
R1 interpreter N
active
Restart after interruption of the
welding process due to Y
interpreter stop (no other fault
service function active) A_TSTOP_CONT=
#ACTIVE
A_HOT_T_STOP= A_TSTOP_CONT=
#ACTIVE #IDLE
A_RETRY_COUNT=0
Initiation of a restart
WELD_AGAIN( ) (Only detection of
status key activation)
“Triggering” flag
State of “HOT/COLD” A_OLD_WELD Detail from
status key saved =A_HOT_WELD “...SPS.SUB”
continued 1/2
Detail from
“...SPS.SUB”
continued 1/2
Manual wire N
Precondition: Welding inactive, feed
wire feed enabled
Y
Status key
N
+ or --
pressed
“HOT”
status key N
pressed
Y
Preconditions:
-- manual welding enabled Programmed
-- restart process after N
weld command
interpreter stop not active. active
-- weld process not active.
Y
Detail from
“...SPS.SUB”
continued 2/3
Detail from
“...SPS.SUB”
continued 2/3
“COLD” N
Precondition: status key
ignition routines pressed
inactive
Y
Welding
N
and/or gas
flow active
Trigger ISR5:
A_FLY_ARC=TRUE
Refreshing of the
function
generator data
End
PLC task
; $OUT[n] ; sprayer
; WAIT SEC
; $OUT[n] ; rotating knife
; WAIT SEC
; $OUT[n] ; reamer addressing
; WAIT SEC
A_CLEANER=#IDLE
END ; ( CLEANER )
Using the Trigger function, various values can be assigned to the variable A_FLT_SV_FCT
depending on the robot motion. The purpose of this is to assign appropriate fault service
functions to different working ranges of the robot.
INTERRUPT ON 3
ELSE In the case of an error during
welding,
MOVE_TCP ({X -50.0,Y 1.0,Z 1.0} ) the torch is moved back
by X=50 mm *)
HALT
LIN POS_RET The torch is moved back to the
ENDIF start position.
The robot stops 50 mm away from the seam. This makes it possible to work on the wire
without having to move the robot away.
If this fault service function is implemented, it is essential to make sure that there
is sufficient clearance for the torch to be retracted.
If this is not possible, reduce the distance “X” accordingly -- MOVE_TCP ({X -50.0,Y
1.0,Z 1.0} ).
The tool must be calibrated in such a way that the current nozzle with the protruding
wire corresponds to the +X direction in the tool coordinate system. Otherwise, there
is the risk of a collision with the workpiece.
13 Customized messages
In addition to the standard error messages, the KCP can also display customized information
in the message window. The message texts and the signal inputs to which they are linked
can be determined by the customer. This results in enhanced operating convenience and
simpler location of faults. This type of error message is only generated for periphery faults.
When the fold PREPARED SYSTEM INPUTS is opened, the window shown in Fig. 54 is
displayed.
The system inputs in question are the signal groups defined in A_FLT_CYCFLAG for weld
seam monitoring.
In the event of a fault, a bit--coded fault marker is generated in the variable TMP_WLD_CTRL
in order to generate a cause--specific message after deactivation. Four inputs are
preprogrammed in $CONFIG.DAT:
These four configured inputs can trigger a periphery error:
In addition to the four predefined messages, other prepared messages (e.g. for KPI systems)
are displayed when the fold USER ERROR MESSAGES is opened. The length of the text may
not exceed 7 characters!
You can enter your own texts from line S_MSG[5]...... (Fig. 55) onwards. The length of
the text must be entered in the structure at “LENGTH.”
Fig. 56 shows how the fault information is coded in the variable TMP_WLD_CTRL_B. The
position of the set bit in the bit sequence (from the right) determines which text is generated.
The bit sequence B00100000 thus refers to error message S_MSG[6]... in USER ERROR
MESSAGES. The total number of bits which can be set in this way is 12. The bit sequence
B100000000000 thus refers to the message S_MSG[12]....
For additional information on fault location and fault elimination when operating with the
“KUKA.ArcSense” option, see the [KUKA.ArcSense] documentation.
*) Depending on whether the “KUKA.ArcSense” option has been installed and activated.
Operational messages
signal the status of the system that has led to a control reaction, e.g. Emergency Stop. The
message is cleared once its cause has been eliminated. In some cases, a secondary signal
that has to be acknowledged is set for reasons of safety.
Acknowledgement messages
indicate a situation that must in all instances be recognized and acknowledged with the
acknowledge key. They are often a consequence of an operational message. An
acknowledgement message stops a motion or prevents further operation.
Dialog messages
require confirmation by the operator (“Yes” or “No” softkeys). The message is cleared after
it has been confirmed.
15.4 Originator
The origin of the error is indicated in this field.
Cause With A_ACT_AN_MAX <>2, the value needs to be <>0 up to this number
of array variables (induced addressing of the analog channels)
Monitor ARC_INIT
Effect ARC_INIT is not executed, not even in cold or dry run
Remedy Correct the array A_ANAOUT ($CONFIG.DAT)
4 Message text Confirm override 100%
Cause Weld program executed with < >100% override (acceleration ramps are
not so steep); monitor in TEST1/2 and Automatic mode
Monitor ARC.INI
Effect The program enquires whether this has been forgotten
Remedy Answer dialog
5 Message text Backward.ini: SET_TO_FALSE=TRUE and RESTORE=AT_FWD necessary
Cause Program run mode is not set to RUN and welding is to be carried out
Monitor Advance run section of ARC_ON command or ARC_INIT
Effect Program remains in this loop as long as hot welding is meant to be
taking place and the program run mode has not been set to #GO
Remedy Correct the program run mode or activate a cold or dry run
11 Message text Power source not ready
Cause No weld current detected during the timeout following the ignition
attempt.
Monitor After every ignition attempt
Effect Welding is not possible
Remedy Check A_I_STRT_MOV[ ] signal configuration and A_WLD_OUT[ ]
signal table
Check components, gap, and dirt
13 Message text 1. 2.3..... Retry of start procedure
Cause Current off signal not detected within the configured timeout
(A_TIME_OUT) (only if burnfree option is not active)
Monitor ARC OFF command
Effect Process is deactivated anyway
Remedy Check the signal group A_I_WLD_END[ ]
16 Message text Wire still connected to work piece!
Cause Burnfree input not detected (only if burnfree option not active)
Monitor ARC OFF command
Effect Acknowledgement message appears so that burnback can also be
optimized if required. This is intended to be seen as an optimization
Remedy It may also be appropriate to modify the variable #QUIT to #NOTIFY in
A10.DAT (do not configure this input for applications where cycle times
are critical!)
Cause The burnfree procedure was repeated with the burnfree option
activated
Monitor ARC_OFF in burnfree routine
Effect Message serves as information for the user
Remedy Optimize burnback and check burnfree configuration if message appears
frequently
Adapt A_BRN_FREE data set in A10.DAT
18 Message text Burn free retry limit exceeded
Cause Welding active but program run mode is invalid. Program run mode
#GO necessary
Monitor Before every ignition process
Effect Torch cannot be activated
Remedy Adapt the program run mode
20 Message text Welding not possible in T1 mode
Symbols A_WLD_IN[ ], 25
#ACT_PAR, 58 A_WLD_OUT[ ], 19
#COMPLETE, 58 A_WLD_OUT[1], 50, 100
#USR_SEAM, 109 A_WLD_OUT[1].INI, 19
$CONFIG.DAT, 11, 14 A_WLD_OUT[1].NAME_NAT[ ], 19
$CYCFLAG indices, 94 A_WLD_OUT[1].OUT_NR, 19
$TECH[A_FG_MECH1], 72 A_WLD_OUT[2], 49, 100
$TECH_ANA_OFF[B], 83 A10.DAT, 12, 14
$TIMER indices, 94 A10.SRC, 14, 73
A10_INI.DAT, 14
A10_INI.SRC, 14
A
A10_USR_ArcOff1, 32
A_ACT_AN_MAX, 63
A10_USR_ArcOff2, 32
A_ANA_DEF[2,8,5], 64
A10_USR_ArcSeam, 31
A_ANA_MAX_D[ ], 65
A10_USR_INIT, 29
A_ANA_MAX_D[1,1], 68
A10_USR_IRSTOPMESS, 33
A_ANAOUT_NO[ ], 64
A10_USR_PLC_INIT, 33
A_APPLICAT, 37, 102
A10_USR_PLC_Task, 33
A_BB_MODE, 58
A10_USR_PreArcOff, 31
A_BRN_FR_OPT, 57
A10_USR_PreArcOn, 30
A_CLEAER=#ACTIVE, 107
A10_USR_PreArcSwi, 31
A_CTRL_DELAY, 50, 98
A10_USR_SeamError, 35
A_END_BRAKE, 37
A10_USR_START1, 30
A_FLT_CYCFLG[ ], 98
A_FLT_SV_FCT, 96, 109 A10_USR_START2, 30
A_GAS_FLOW, 102 A10_USR_TechStop, 34
A_HOT_WELD, 102 A10_USR_TechStopSub1, 34
A_I_BRN_FREE, 57 A10_USR_TechStopSub2, 34
A_I_STRT_MOV[ ], 50, 100 Adaptation of analog outputs 1 and 2, 64
A_I_WELD_END[ ], 56 Adaptation to the periphery, 17
A_MAX_RETRY, 110 Addressing of the analog outputs, 63
A_O_ACK_FLT[ ], 100 Approximate positioning, 54
A_O_DISBL_P, 102 ARC OFF sequence diagram, 59, 60
A_O_FLT_SIGN, 100 ARC ON -- schematic sequence diagram, 48
A_O_IR_STOP, 101 ARC SWITCH sequence diagram, 51
A_O_IR_STOP_NO, 101 ARC_INIT, 29
A_O_POST_OFF[ ], 55 ARC_MSG.SRC, 14, 111
A_O_POST_ON[ ], 55 ARC_WEAVE.SRC, 14
A_O_SEAM_END[ ], 55 Arc_weave.src, 77
A_PR_GAS_OPT, 42 ARCSPS.SUB, 15
A_RESTRT_OPT, 108
A_STRT_BRAKE, 37
A_SWINDL_OPT, 99
B
A_SWINDL_TIM, 99 Burnback, 58
A_TH_WEAVE_OPT, 83 Burnback mode, 58
A_WLD_ACTIV, 102 Burnback parameters, seam--specific, 58
Index -- i
Index
C I
Changing existing weave patterns, 77 Ignition faults, 95
Characteristic, voltage, 68 Ignoring temporary interrupts, 99
Cleaner routine, 107 IN_NR, 25
Combined mechanical and thermal weaving, Index table for physical digital inputs, 25
85 Index table for physical outputs, 19
Configurable options, 17 Index tables, 18
Configuring the monitoring functions, 98 Interpreter stop, 101
Control points (CPNUM), 72 Interrupt 21, 101
Creating your own weave patterns, 79 Interrupt 5, 37
Current flowing, 50 Interrupt indices, 94
Customer--specific adaptation of weld se-
quences, 29 K
Customized messages, 111
Keyswitch, 41
KRL programming language, 7
D
Digital inputs, 18 L
Digital outputs, 18 Lateral deflection (weave amplitude), 72
Double 8, 70 Linear characteristic, 66
E M
Error handling routines, 33 Manual activation and deactivation of the weld
process, 37
Max. no. of analog outputs, 63
F Maximum weave frequency, 80
FAULT SERVICE FUNCTION, 96 Motion characteristics of the robot, 80
Fault service functions, 95, 109
Fault situations, 95 N
FCTCTRL.SCALE_IN, 73 NAME_NAT, 19, 25
FCTCTRL.SCALE_OUT, 73 Non--linear characteristic, 68
Figure--eight weave pattern, 76 Notes on mechanical weaving, 80
Figure--eight weaving, 70 Number of characteristic points, 65
FLT_SERV.DAT, 14
FLT_SERV.SRC, 14, 96
P
FLY ARC, 37
PARA (characteristic analog output), 66
Path velocity, 80
G Program structure, 13
Graphical user interface of the KUKA Control PULS_TIME, 21
Panel, 11 PULSE_TIME 0.0, 22
Index -- ii
Index
R T
Through--the--arc seam tracking, 13
Resonant frequency, 80
Tool--based technological system TTS, 69
Resource distribution, 94
Trapezoidal weaving, 70
Restart after an interpreter stop, 102 Triangular weaving, 70
Robot error, 33 Triple groups, 18, 21, 26
Robot motion interrupted, 38 Two--dimensional weaving, 72
Rotation of the weave plane, 81 Types of faults and causes, 95
V
S VAL (characteristic analog output), 66
Voltage, 66
Seam error, 35 Voltage characteristic, 66
Signal states for digital outputs, 22
Signal tables, 55 W
Signal tables for digital inputs, 26 Weave frequency, 80
Signal tables for digital outputs, 21 Weave frequency nomogram, 81
Weave length, 72, 80
Signal tables for digital outputs and inputs, 18
Weave patterns (mechanical weaving), 70
Spiral weave pattern, 73
Weave patterns, changing, 77
Spiral weaving, 70 Weave patterns, creation, 79
SPS.SUB, 101 Weave patterns, thermal weaving, 83
STATE, 21 Weaving, mechanical and thermal, 69
Status key ”DRY”, 38 Weaving, mechanical and thermal combined,
85
Submit interpreter task, 33
Weaving, two--dimensional, 72
Submit routine, 39 Weld process monitoring, 50
Subroutines for weld commands, 29 Weld voltage, 66
Switching from constant values to thermal Wire feed, 37, 66
weaving, 53 Wire feed characteristic, 67
Index -- iii