Programming Training Welding
Programming Training Welding
Welding
Foreword
This Training Booklet for programming training is a short-form extract from various Operation Manuals
of the YASNAC DX100/ FS100 / DX200 Controller. It describes a simplified form of handling and operat-
ing the controller.
The training document was created on the basis of the training contents and training processes and is
designed for use as an accompanying working document during the training. The booklet is based on
he training booklet of the user training and does not contain contents of the user training.
We do not accept any responsibility for the correctness of this information. In case of doubt, please refer
to the respective Operation Manual for assistance. Please read all the instructions and texts of this
Training Booklet carefully and proceed to take action only after you have understood the contents.
Should ambiguities arise, please refer to the respective Operation Manual or ask an employee of YAS-
KAWA Europe GmbH.
For the sake of product improvements, YASKAWA reserves the right to modify the controller without pri-
or notice. Modifications will be included in a future edition of the Training Booklet. This Training Booklet
will only serve its intended purpose if the display indicator in the manufacturer's standard is used with
menu symbols without Multi-Window and labels. The proper use of this booklet may be compromised in
case of customized menu navigation and labeling of data and data fields.
Copyright Information
All training and information documents and the contents thereof handed out during training and ceded
for use are protected by copyright. These documents and extracts thereof must not be copied, present-
ed, lent or sold. The software used during training and the files created with it as well as the documents
that are handed out are the property of YASKAWA Europe GmbH as the holder of rights and must not
be copied, presented, lent or sold. In case of non-observance we reserve the right to take action under
civil and criminal law and prohibit the concerned persons to take part in the training.
The intellectual property is protected by various rights - such as patent right, trademark right and copy-
right - of YASKAWA Europe GmbH.
Version 3
Version: February 2015
Editorial:
YASKAWA academy
Author: Trainers of YASKAWA academy
[email protected]
Production/Print
ADVOPLUS & LAMMERT
www.advoplus.de
2 E180000005GB03
1 Setting the teach conditions ............................................................................ 4
2 The Tool ............................................................................................................. 5
3 Tool Coordinate System................................................................................. 11
4 Defining User Coordinates............................................................................. 14
5 Signals (Inputs/Outputs) ................................................................................ 18
6 Linking of Jobs (JUMP/CALL)........................................................................ 23
7 Variable ............................................................................................................ 29
8 Inform list......................................................................................................... 35
9 CUBE Space Overlap ...................................................................................... 36
10 Synchronous Programming (SMOV) ............................................................. 42
11 Weaving ........................................................................................................... 44
E180000005GB03
3
1 Setting the teach conditions
In programming mode, various aspects can be set under "Setup" (without parameter
changes).
4 E180000005GB03
2 The Tool
Tool
File 0
User coordinate file 1
User coordinate file 2
User coordinate file 3
Tool
File 63
SELECT
Bild 1: Overview for 64 tools (left) and tool file e.g.tool 0 of 64 tools (right)
E180000005GB03 5
2.3 Dimensions in the tool file
The tool dimensions in X; Y; Z are entered via the numerical keypad of the PP.
The entered values are accepted into the file with ENTER.
6 E180000005GB03
E180000005GB03 7
2.5 Measuring the tool with the robot (TCP measurement)
Move to and save 5 robot positions (named TC1 to TC5) to a fixed position (most suit-
ably a tip) with different axis positions of all robot axes.
The positions are saved with MODIFY + ENTER .
6% 6%
6%
6%
6%
After all 5 points have been saved, the tool calibration must be terminated with
.
8 E180000005GB03
E180000005GB03 9
2.5.1 Representation of the 5 positions for the TCP measurement
The positions should be considered reference points.
Position TC1
10 E180000005GB03
3 Tool Coordinate System
E180000005GB03 11
Rotation about X axis Rotation about Y axis
Rotate by Y - 45 degrees
It makes sense with the tool coordinate system to match the axis coordinates to the ro-
bot coordinate system. With an upright robot, the positive Z direction is "up, away from
the component", so that the positive Z direction of the tool coordinates should also be
set as "away from the component".
CAUTION
When using a Q-Set, tool coordinates should not be used.
DANGER OF CRASHING
12 E180000005GB03
E180000005GB03 13
4 Defining User Coordinates
User coordinate
File 1
User coordinate file 2
User coordinate file 3
User coordinate file 4
User coordinate
File 63
Z- axis
X-axis
XX
XY
Y-axis
ORG
XX Point on the X axis Defines the orientation of the X axis with respect to the
ORG.
XY Point in the XY plane Defines in which plane perpendicular to the defined X axis
the Y axis and the Z axis are defined.
14 E180000005GB03
E180000005GB03 15
4.2 Calling up the user coordinate file
According to the position to be saved (ORG, XX or XY), select this in the selection
menu.
The positions are saved with MODIFY + ENTER .
After all 3 positions have been saved, the setup of the
user coordinate system must be terminated and completed.
16 E180000005GB03
4.3 Selecting the user coordinate system
To select one of the 63 user coordinate systems manually, the symbol of the user co-
ordinate system in the status area must be selected first.
The selection list for the user coordinates can then be opened with
TOOL SEL
SHIFT + COORD .
The desired number becomes active when cursor is placed on it and is directly dis-
played in the symbol in the status area.
TOOL SEL
Use SHIFT + COORD to exit from the selection menu.
E180000005GB03 17
5 Signals (Inputs/Outputs)
Standard
Inputs /outputs
inputs /outputs expandable to ...
up to 2048 signals
each 40 signals
18 E180000005GB03
E180000005GB03 19
5.2 Binary coding for half groups and groups
IN#(8)
IN#(7)
IN#(6)
IN#(5)
IN#(4)
IN#(3)
IN#(2)
IN#(1)
OG#(256) OG#(1) Output groups
OT#(7)
OT#(6)
OT#(5)
OT#(4)
OT#(3)
OT#(2)
OT#(1)
8 7 6 5 4 3 2 1 Signal number
0 0 0 0 0 0 0 0 0 All 8 off
255 1 1 1 1 1 1 1 1 All 8 on
23 22 21 20 23 22 21 20
8 4 2 1 8 4 2 1
0 0 0 0 0 All 4 off
15 1 1 1 1 All 4 on
0 = Signal Off
1 = Signal On
20 E180000005GB03
5.3 Displaying the status of I/O signals
All signals can be displayed in their current state. Output signals can be switched
manually, and input signals can be simulated.
Place the cursor on the field Place the cursor on the circle
INTER
Switch with SELECT Switch with
LOCK
and SELECT
INTER
Switch input with and SELECT
LOCK
E180000005GB03 21
5.4 Signal instructions
DOUT AOUT
INFORM IN / OUT
DIN
WAIT
ARATION
ARATIOF
LIST PULSE
The instructions are selected with SELECT and can be directly edited in the instruction
line or in the corresponding DETAIL VIEW.
Instructions Meaning
DOUT OT#(1) ON
Switches output 1 On
DOUT OGH#(1) 15
Switches output 1, 2, 3 and 4 On
DOUT OG#(2) 76
Switches output 11,12 and 15 On
DIN B000 SOUT#(59) Saves the status of Special output 59 in variable B000 (1 = ON / 0 =
OFF)
DIN B010 OG#(2) Saves the status of the output group 2 in variable B010 (e.g. output 11,
12, 15 = On with B010 = 76)
WAIT IN#(33) ON
Wait until input 33 is On
22 E180000005GB03
6 Linking of Jobs (JUMP/CALL)
JUMP and CALL are control instructions. They serve e.g. to change between two
jobs. A prerequisite is that the jobs are of the same job type (e.g.: robot job > robot job
or parallel job > parallel job).
It must also be observed that the axis group of the jobs is not different.
(e.g.:) R1 > R1 or R1+S1:S1 > R1+S1:S1 or no axis group > R1).
If JUMP or CALL instructions are linked to conditions (IF) , the jump is only executed if the condition is
met. If this is not the case, the instruction is ignored and the job executed further.
E180000005GB03 23
24 E180000005GB03
6.3 Other use if JUMP
JUMP also makes it possible to jump to a different line in the same job.
JOB: AB
0000 NOP
0001 JUMP END IF IN#(20) ON
0002 START
0003 .
0004 .
0005 .
0006 .
0007 .
0008 JUMP START IF B000<=3
0009 END
0010 END
JOB:MAIN
0000 NOP JOB: 1
0001 . JOB: 2
CALL each other, what is the amount of memory
0000 NOP
0002 CALL JOB: 1 0001 .
JOB: 3
0003 . 0002 CALL JOB: 20000 NOP
0001 .
00002 NOP JOB: A
0003 .
0004 . 0004 . 0002 CALL JOB:
0005 . 0005 END 0003 . 0001 . JOB: A
0004 . 0002 CALL JOB: 2
0006 . 0005 END 0003 . JOB: 11
0004 .
0007 . 0005 END 0000 NOP JOB: 12
0008 . JOB: A 0001 .
00002 NOP
0002 CALL JOB:
0009 . CALL JOB: A 0000 NOP 0003 . 0001 .
0010 . 0001 . 0004 . 0002 .
0002 . 0005 END 0003 .
0011 . 0003 . 0004 .
0012 . 0004 . 0005 END
0005 END
0013 .
0014 .
0015 .
0016 .
0017 . JOB: B
0018 CALL JOB: B 0000 NOP
0019 . 0001 .
0020 . 0002 .
0003 .
0021 END 0004 .
0005 END
JOB: 9 JOB: 10
0000 NOP 0000 NOP
0001 . 0001 .
0002 CALL JOB: 10 0002 RET IF IN#(20) ON
0003 . 0003 .
0004 . 0004 .
0005 END 0005 END
E180000005GB03 25
6.6 Exercise Job 1
Task: Pick and place a component and integrate subjobs with the CALL instruction.
JOB: MAIN
0000 NOP
0001 DOUT OT#(13) OFF Lamp in key 09 off
0002 JUMP JOB:KEHLNAHT IF IN#(13)=ON Jump into the JOB FILLET
WELD
0003 END
0000 NOP
0001 DOUT OT#(13) ON Lamp ON
0002 0001 MOVJ VJ=25 start position
0003 0002 MOVJ VJ=25 Safety position approach
0004 0003 MOVJ VJ=25 Approach to component (fillet weld1)
0005 0004 MOVL V=80 Welding line
0006 0005 MOVJ VJ=25 Safety position Rotate torch
0007 0006 MOVJ VJ=25 Safety position Approach 2
0008 0007 MOVJ VJ=25 Approach to component (fillet weld2)
0009 0008 MOVL V=80 Welding line
0010 0009 MOVJ VJ=25 Safety position
0011 0010 MOVJ VJ=25 start position
0012 JUMP JOB:MAIN Jump into the JOB Main
0013 END
26 E180000005GB03
6.7 Exercise Job 2
Task: Link the second JOB CIRCULAR WELD with the JOB MAIN.
JOB: MAIN
0000 NOP
0001 DOUT OT#(13) OFF
0002 DOUT OT#(14) OFF
0003 JUMP JOB:KEHLNAHT IF IN#(13)=ON
0004 JUMP JOB:KREISNAHT IF IN#(14)=ON
0005 END
E180000005GB03 27
28 E180000005GB03
7 Variable
E180000005GB03 29
7.1.3 The string variables
String variables are used to save characters.
B001
30 E180000005GB03
E180000005GB03 31
Contents of local variables can be found under .
GO BACK
PAGE
GO BACK
PAGE
GO BACK
PAGE
GO BACK
PAGE
GO BACK
PAGE
GO BACK
PAGE
GO BACK
PAGE
GO BACK
PAGE
32 E180000005GB03
7.3 Instructions for variable
CLEAR CNVRT GETS VAL SETTOOL
INC AND SQRT VAL2STR GETTOOL
SET OR SIN ASC PMT
INFORM ARITH
DEC
ADD
NOT
XOR
COS
ATAN
CHR$
MID$
SETFILE
GETFILE
LIST SUB MFRAME MULMAT LEN SETREG
Desti
Comm Valu
natio B000 B001 B002
and e
n
SET B000 17 → 17 0 0
Set content to 17
INC B001 → 1
Add one to content (+1)
DEC B000 → 16
Subtract one from content (-1)
ADD B002 57 → 57
Add 57 to content
SUB B001 5 → 53
Subtract 5 from content
SET B001 0 → 0
Set content to zero
E180000005GB03 33
7.4 Exercise Job 3
Task: Integrate automatic cleaning of the torch in the JOB MAIN by means of variable
query.
JOB: MAIN
0000 NOP
0001 DOUT OT#(13) OFF
0002 DOUT OT#(14) OFF
0003 JUMP JOB:KEHLNAHT IF IN#(13)=ON
0004 JUMP JOB:KREISNAHT IF IN#(14)=ON
0005 CALL JOB:REINIGEN IF B025>=2
0006 END
0000 NOP
0001 DOUT OT#(14) ON
0002 0001 MOVJ VJ=25
0003 0002 MOVJ VJ=25
0004 0003 MOVJ VJ=25
0005 0004 MOVC V=120
0006 0005 MOVC V=120
0007 0006 MOVC V=120
0008 0007 MOVC V=120 JOB: CLEANING
0009 0008 MOVJ VJ=25
0010 0009 MOVJ VJ=25 0000 NOP
0011 INC B025 0001 DOUT OT#(15) ON
0012 JUMP JOB:MAIN 0002 0001 MOVJ VJ=25
0013 END 0003 0002 MOVJ VJ=25
0004 0003 MOVL V=500
JOB: FILLET WELD 0005 0004 MOVL V=100 PL=0
0006 DOUT OT#(16) ON
0000 NOP 0007 TIMER T=2,5
0001 DOUT OT#(13) ON 0008 DOUT OT#(16) OFF
0002 0001 MOVJ VJ=25 0009 WAIT IN#(16) ON
0003 0002 MOVJ VJ=25 0010 TIMER T=0,1
0004 0003 MOVJ VJ=25 0011 0005 MOVL V=100
0005 0004 MOVL V=80 0012 0006 MOVL V=500
0006 0005 MOVJ VJ=25 0013 0007 MOVJ VJ=25
0007 0006 MOVJ VJ=25 0014 0008 MOVJ VJ=25
0008 0007 MOVJ VJ=25 0015 SET B025 0
0009 0008 MOVL V=80 0016 DOUT OT#(15) OFF
0010 0009 MOVL VJ=25 0017 END
0011 0010 MOVL VJ=25
0012 INC B025
0013 JUMP JOB:MAIN
0014 END
34 E180000005GB03
8 Inform list
DOUT AOUT
INFORM IN / OUT DIN ARATION
LIST WAIT ARATIOF
PULSE
WVON
WORK WVOF
TOOLON
TOOLOF
SFTON MSHIFT
SHIFT SFTOF
E180000005GB03 35
9 CUBE Space Overlap
Overlapping spaces are used to monitor certain workspaces within the working range
of the robot.
Up to 64 overlapping spaces can be defined in files. They can be created in the basis,
robot or user coordinate system.
Detection range
basis coordinates
Detection range
user coordinates
One of two different methods can be chosen to define the overlapping space:
max value
TCP
min
value
36 E180000005GB03
E180000005GB03 37
9.1 Calling up the file for overlapping spaces
This requires the EXTENDED mode
Calling up the overlapping space file.
38 E180000005GB03
9.2 Meaning of the data fields in the overlapping space
Overlapping areas can be defined for all existing axis groups (e.g. R1; R2; B1; S1; S2
etc. )
This selects the orientation of the spatial axes of the overlapping area. A selection can
be made between the basis, robot or user coordinate system.
This selects whether the overlapping area is defined according to the MIN/MAX of
space coordinates or the CENTRE POSITION of the teach point.
If MIN/MAX is selected, the cursor is set to <MIN> or <MAX> and the position is set by
teaching.
If CENTRE POSITION is selected, the dimension in XYZ is entered at <LENGTH>.
The space is then set by teaching the centre point in space.
E180000005GB03 39
9.3 Special signals for the overlapping spaces
Output signals are switched when the TCP is in the overlapping area.
40 E180000005GB03
9.4 Exercise Job 8
Task: Request the start position via a
virtual space (CUBE) in conjunction
with a special output (SOUT).
JOB: MAIN
0000 NOP
0001 DIN B099 SOUT#(57)
0002 JUMP JOB ERROR-CUBE IF B099<>1
0003 DOUT OT#(13) OFF
0004 JUMP JOB:KEHLNAHT IF IN#(13)=ON
0005 END
JOB: ERROR-CUBE
0000 NOP
0001 SETUALM 8000 "Robot is not in home position" 0
0002 END
NOTE! In order to use the instruction SETUALM, the parameter S2C400 must be set
to 1.
E180000005GB03 41
10 Synchronous Programming (SMOV)
Preparatory basis for the synchronous robot movement with reference to an external
axis is the relative measurement of both axis groups e.g. R1 and S1. The calibration
defines the position of the external axis to the robot in space. However, it is first re-
quired to measure the TCP and set up the axis groups.
42 E180000005GB03
When the points are saved, the external axis is positioned first, and the robot will fol-
low to this position. If a synchronous movement is designed, the MOV instruction will
become a SMOV instruction before the position is saved.
This is done with the key 4 .
JOB: SYNCHRO-JOB
0000 NOP
0001 0001 MOVJ VJ=25 +MOVJ VJ=100
0002 0002 MOVJ VJ=25 +MOVJ VJ=100
0003 0003 MOVJ VJ=25 +MOVJ VJ=100
0004 0004 SMOVC V=100 +MOVJ
0005 0005 SMOVC V=100 +MOVJ
0006 0006 SMOVC V=100 +MOVJ
0007 0007 SMOVC V=100 +MOVJ
0008 0008 MOVJ VJ=25 +MOVJ VJ=100
0009 0009 MOVJ VJ=25 +MOVJ VJ=100
0010 0010 MOVJ VJ=25 +MOVJ VJ=100
0013 END
E180000005GB03 43
11 Weaving
Weaving with the robot is used to close component gaps or to create large "a" dimen-
sions. The weaving does not change the track speed and therefore not the cycle time.
The oscillating movements are saved in special weaving files.
1
2
3
4
5
8
9
10
44 E180000005GB03
Explanation of the weaving file
(time)
1 oscillation
Other relationships of the weaving movement result from the position of the
robot with respect to the welded seam and the TCP speed with respect to
the weaving movement.
Weaving range
Oscillating amplitude in mm
Frequency in Hz
E180000005GB03 45
Explanation of the weaving file
7 The vertical and horizontal pattern only applies to triangle and L-type con-
tour weaving.
46 E180000005GB03
11.2 Detection of wall and floor plane
Since the robot controller only knows the programmed movements (welded seams)
and not their working environment (components), the position of the wall and floor
planes is not fully guaranteed. However, this must be known to ensure the correct ap-
plication of the angles that are specified in the weaving files to the weaving weld.
E180000005GB03 47
11.2.3 Setting reference points
A simple weld will require two reference points. The first reference point is always set
to the position of the wall plane.
In the case of circular welds, it may be necessary to set three reference points.
48 E180000005GB03
11.3 Exercise Job 6
Task: Move fillet weld with weaving without table movement.
JOB: WEAVING-JOB
0000 NOP
0001 0001 MOVJ VJ=25
0002 0002 MOVJ VJ=25
0003 0003 MOVJ VJ=25
0004 WVON WEV#(1) weaving file 1 ON
0005 0004 MOVL V=40
0006 WVOF weaving OFF
0007 0005 MOVJ VJ=25
0008 0006 MOVJ VJ=25
0009 0007 MOVJ VJ=25
0010 END
E180000005GB03 49
11.5 Exercise Job 7
Task: Expand training job 5 with weaving function and 2 reference points.
During this task, care should be taken to use synchronous instructions.
JOB: SYNCHRO-JOB
0000 NOP
0001 0001 MOVJ VJ=25 +MOVJ VJ=100
0002 0002 MOVJ VJ=25 +MOVJ VJ=100
0003 0003 MOVJ VJ=25 +MOVJ VJ=100
0004 SREFP 1 Synchronous reference point
1
0005 SREFP 2 Synchronous reference point
2
0006 SWVON WEV#(1) Synchronous weaving file 1
ON
0007 0004 SMOVC V=100 +MOVJ
0008 0005 SMOVC V=100 +MOVJ
0009 0006 SMOVC V=100 +MOVJ
0010 0007 SMOVC V=100 +MOVJ
0011 SWVOF Synchronous weaving OFF
0012 0008 MOVJ VJ=25 +MOVJ VJ=100
0013 0009 MOVJ VJ=25 +MOVJ VJ=100
50 E180000005GB03
E180000005GB03 51
YASKAWA Contacts
www.yaskawa.eu.com
[email protected]
E180000005GB03