An Algorithm for the Welding Torch Weaving Control of Arc Welding Robot

The teaching learning method is generally applied in six DOF (degrees of freedom) robot programming. However, for complicated weaving welding, there is a drawback using this method. That is that numerous  teaching control points are needed in the programming. Based on the theory of coordinate transformation, the purpose of this paper was to address this drawback by utilizing an algorithm for the welding torch weaving control. This algorithm includes the novel formulation to calculate the tracking position, and can produce an accurate and continuous weaving path along various weld lines. The teaching programming can easily determine these weld lines which contain few teaching points. Therefore, this algorithm can reduce the programming time for the robotic welding application. A lot of experiments have been done to validate the algorithm. The experimental results show that the weaving control algorithm is correct and can produce various weaving paths.DOI: http://dx.doi.org/10.5755/j01.eee.21.2.5919


I. INTRODUCTION
The development of robotic welding has been truly remarkable and is one of the major application areas for industrial robots nowadays, T. S. Hong et al. [1] discusses many advantages and disadvantages of different robotic welding technologies.Arc welding is considered to be one of the most promising applications of intelligent robots.This situation first stems from a low manual productivity due to the severe environmental conditions resulting from the intense heat and fumes generated by the welding process.Second, arc welding is the third largest job category behind assembly and machining in the metal fabrication industry [2].Robot weaving welding technology is a typical application of arc welding industry, so it encourages intensive research and development of sophisticated control algorithm and application-specific software package.J. Wang et al. [3] developed a novel swing arc system to realize high quality narrow gap welding at low cost.This system uses a motor of hollow axis to turn directly the micro-bent conductive rod and then to weave circularly the arc around itself axis of torch.The method of the robot trajectory planning can also be used Manuscript received March 15, 2014; accepted October 10, 2014.
for robot weaving welding control, but little work of this method was reported currently.This paper presents an algorithm for the welding torch weaving control of arc welding robot by employing this method.
In an arc welding application, a task planning is the specification of the geometrical and the technological parameters.A task planning scheme for an arc welding robot must employ the following parts.First, welding scheme definition; second, welding procedure specification for each individual weld; third, motion planner.The motion planner is used to produce a motion scheme that can be executed by a robot controller [4].The motion scheme is generally achieved by the method of teaching programming.However, for complicate weaving welding, especially for Multi-Layer and Multi-Pass welding, which has been reported in [5]- [6].There is a drawback using this method, that is that numerous teaching control points are needed in the programming.Based on a method of the robot trajectory planning, this paper focus on addressing this drawback by utilizing an algorithm for the welding torch weaving control.This algorithm includes the novel formulation to calculate the tracking position, and can produce an accurate and continuous weaving path along various weld lines including a complicated combination of straight lines and arcs.The teaching programming can easily determine these weld lines which contain few teaching points.Therefore, this algorithm can reduce the programming time for the robotic welding application.
With a weaving welding robot, the programming of a weaving path is usually performed in two steps.First, teaching program determines a weld line.This weld line is both the centre of the weaving path and the offset benchmark of Multi-Layer and Multi-Pass welding.The weld line is discretized into a set of 3D (three-dimensional) positions.Second, the set of 3D positions is calculated through the algorithm and is mapped from Cartesian space to joint space with the inverse kinematic model of the welding robot [3].The robot controller updates the moving reference coordinate system within each cycle time to achieve the expected motion path.
The remainder of this paper is organised as follows.Section II describes the real-time moving reference coordinate system determining the weaving path and introduces the tool frame from actual TCP (tool centre point)-orientation.Section III is devoted to a formal statement of the weaving control algorithm.In Section IV, a lot of experimental validations for the algorithm are presented.Finally, Section V summarizes the main contributions of this paper.

A. Reference Coordinate System
The use of Cartesian coordinates for the description of positions of a robot path is an important step in simplifying programming.The next step is the use of Cartesian reference systems.Reference systems consisting of position and orientation offsets are often called frames or transformations in robotics.As shown in Fig. 1, usually, a six DOF (degrees of freedom) robot have four reference systems, such as the world frame W, the base frame B, the object frame O and the tool frame T. The common root of all reference systems in the applications with a single robot is called world frame W, which is usually chosen in the base of the robot, i.e. the base frame B. In many welding tasks the tool tip of a robot has to move to several different positions on the same welding object.When defining the positions of the robot weaving path relative to world frame W, all positions on the welding object can be translated together by modifying the position of the reference system.
As shown in Fig. 2, the weaving path and weld line are relative to world frame W. The points between 1 p and 2 p can be calculated by K. Zhang interpolation algorithm [7].Because a straight line can be determined by two teaching control points, the weld line can be achieved by teaching easily.However, the weaving path cannot be achieved by using the same method.The positions of the weld line are corresponding one to one with the positions of the welding path, just like the vector 1 w q and ' 1 w q .All positions of the weaving path can be achieved by modifying positions of a number of the reference coordinate system, such as frame1, frame2, frame3,…, under the condition of not changing the target command position in the robotic program.This coordinate transformation can be described by the follow equations: ' ' where ' 1 w q is the position vector of the weaving path relative to the world coordinate system.
' 1 1 w q is called the tracking vector.
with offset and rotation the relation expression of them will be described in the Section III.The left superscript "W" refers to the reference coordinate system of the vector, the right superscript denotes the starting point of a vector (blank space shows that the start point is the origin of reference coordinate system) and the right subscript denotes the ending point of a vector.When the activated reference coordinate system of the robot continually moves from frame1 to frame2, to frame,…, a continuous weaving path based on the weld line can be obtained.

B. Definition of the Tool Frame
A. P. Pashkevich has described in detail the definition of the weld frame for the linear and circular weld joints in [8].
In order to suit various weld joints, a similar approach was used to definite the tool frame in the present study.For the linear weld joints, a moving frame with the specific TCP-orientation is defined, as shown in Fig. 3.For the circular weld joints, a moving frame is calculated from the changing TCP-orientation to ensure the tangency of the welding path and the XT-axis at every point, as shown in Fig. 4:  the XT-axis is directed along the weld joint;  the ZT-axis specifies the welding torch approaching direction (which is normal to the weld joint);  the YT-axis completes the right-hand oriented frame and thus shows the "weaving" direction.Three coordinate axis unit vectors can be computed by where w T n is the XT-axis unit vector, w T o is the YT-axis unit vector， w T a is the ZT-axis unit vector.w T R is the tool frame rotation matrix relative to the world frame.The variable , , a b c is three Euler angles of TCP-orientation.The symbols in the matrix are described as follows:

A. The Weaving without Offset and Rotation
Without offset and rotation, ' 1 . As long as the tracking vector ' 1 1 w q is calculated, the weaving path can be achieved by activating the reference coordinate system of arc welding robot whose origin is the tracking position 1 w O q .In the weld procedure, the direction of oscillation is along the binormal vector bi p which is determined by the path velocity unit vector path v and the ZT-axis unit vector w T a .The equitation is as follows , where path v is as where w T a has the same meaning as in (4).The binormal vector bi p is the unified unit vector normal to path velocity vector and ZT-vector.So, the tracking vector ' 1 1 w q can be calculated by the following equation , where the parameter A denotes actual oscillation amplitude.
The parameter  refers to actual amplitude of oscillation function.The range of  is   For trapezoid oscillation,  is defined as follows:

B. Offset of the Weld Line
Welding operations planning can be classified into four types according to the number of weld lines and the number of layers as shown in Table I  When the weld line moves along YT -axis of the tool frame, the Multi-Layer and Single-Pass welding is achieved.When the weld line moves along ZT-axis of the tool frame, this weld operation is defined as Single-Layer and Multi-Pass weld.If both YT -axis and ZT-axis have an offset, this weld operation is called Multi-Layer and Multi-Pass welding [10].The offset vector can be obtained by the following equation , where the three unit vectors , , w path bi T v p a have the same definition as in (6).The vector w os q denotes actual y-offset and z-offset for Multi-Layer and Multi-Pass welding relative to the world frame.The vector T os q denotes actual y-offset and z-offset for Multi-Layer and Multi-Pass welding relative to the tool frame, it is defined as Generally, x-offset is implemented, because x-offset is a starting-point offset and is not a weld path offset.As shown in Fig. 5, the tracking position with weld line offset can be obtained by follow equation .

C. Rotation of the Weaving Path
As shown in Fig. 6, besides the weld line offset, it is necessary that rotation around the coordinate axes of the tool frame ensures to adapt to various weld joints.In this paper, the weaving path rotates around the X-axis and Z-axis of the tool frame, rotation around Y-axis is not implemented.For X-rotation, namely rotation around path vector, the tracking position with the weld line offset and X-rotation can be obtained by the following expression 1 ( ) .
For Z-rotation, the tracking position with the weld line offset and Z-rotation is described as follows 1 ( ) , where w os q represents the weld line offset.x R denotes 3 × 3 rotation matrix around the path velocity unit vector path v .
z R denotes 3 × 3 rotation matrix around ZT-axis unit vector w T a of the tool frame.The rotation matrix x R , z R is defined as follows: (1 ) (1 ) ( 1) , (1 ) (1 ) where the parameter  is the rotation angle around the path velocity unit vector.The parameter  is the rotation angle around Z-axis unit vector of the tool frame.

A. Experiment of Three Weavings
To validate this algorithm, a software package was developed on six DOF robotic control system which was developed by Jiangsu Automation Research Institution.The experimental environment was shown in Fig. 7.
The parameters of the Experiment are described as follows: The weaving amplitude A (10 milimeters); the weaving frequency (0.5 Hz); the weaving type is set sine, triangle and trapezoid respectively; the parameters of offset and rotation are set to zero.The weld line is obtained by teaching two points (i.e. the start point and end point of the weld line).
The experiment data of three weavings were shown in

B. Weaving Experiment with The Weld Line Offset
Due to page limitation, only sine weaving data records were provided.The parameters of the Experiment were described as follows: The weaving amplitude A (10 millimeters); the weaving frequency (0.5 Hz); the weaving type was set sine; the Y-offset (-80 millimeters); the Z-offset (30 millimeters); the parameters of rotation was set to zero.The weld line was obtained by the same approach of experiment without offset and rotation.As shown in Fig. 12 The photo of the weaving experimental result is shown in Fig. 13.

C. Weaving Experiment with X-rotation or Z-rotation
The parameters of this Experiment were described as follows: The weaving amplitude A (10 millimeters); the weaving frequency (0.5 Hz); the weaving type was set sine; the X-rotation (30 degrees); the Z-rotation (30 degrees); the parameters of offset is set to zero.The weld line is obtained by the same approach of experiment without offset and rotation.
The sine weaving data records were provided.As shown in Fig. 14 As shown in Fig. 14

V. CONCLUSIONS
The experimental results showed that the algorithm for the welding torch weaving control satisfied the control of three weaving paths based on a complicated weld line, and achieved the complex spatial offset and rotation.It is possible to implement the Multi-Layer and Single-Pass welding path for both the linear and the circular joints by setting weaving parameters in robotic program.By using the developed software package, it is also possible to reduce the programming time for the robotic welding application.
The particular contribution of this paper describes a moving reference coordinate system based on the theory of coordinate transformation, which is a key issue in the kinematic control of the welding robotic control system.When the robot activates the corresponding reference coordinate system, the expected weaving path can then be achieved by implementing robotic motion commands.The algorithm in this paper had been applied in the software module of JARI robotic control system.This application reduced greatly the teaching time in arc welding robot programming.In the future, the research work will focus on the analysis of saving the teaching programming time and promoting efficiency.

q
is called the tracking position, i.e. the origin of the robotic activated reference coordinate system.Without offset and rotation,
Single-Layer and Single-Pass Multi-Layer and Single-Pass Multi-Pass Single-Layer and Multi-Pass Multi-Layer and Multi-Pass
-Fig. 13, including the time history of the tracking vector and the tracking position, the 2D diagram of TCP positions. .Tracking vector (a), Tracking position (b) and TCP position of sine weaving with Y-offset (c). .Tracking vector (a), Tracking position (b) and TCP position of sine weaving with Z-offset (c).It can be seen from Fig. 11(a), Fig. 11(b), Fig. 12(a) and Fig. 12(b) that when the weaving have an offset of the weld line, comparing with the tracking vector, the tracking position produce an offset element, such as Y-offset is 80 in Fig. 11(b), Z-offset is 30 in Fig. 12(b).The result of weaving can be seen from Fig. 11(c) and Fig. 12(c).The Y coordinate of the weld line changes from -440 to -520.The Z coordinate of the weld line changes from 778 to 808.The oscillation function of the algorithm can accurately produce two sine curves.
-Fig. 15, including the time history of the tracking position and the 2D diagram of TCP positions.a) b) Fig. 14.Tracking position (a) and TCP position of sine weaving with X-rotation (b).a) b) Fig. 15.Tracking position (a) and TCP position of sine weaving with Z-rotation (b).
(a) and Fig. 15(a), the tracking position was computed by (12) and (13).The result of weaving with X-rotation can be seen from Fig. 14(b), the weaving plane has rotated 30 degrees around X-axis whose Y coordinate is -440.The result of weaving with Z-rotation can be seen from Fig. the weaving path has rotated 30 degrees around Z-axis.