The Path Planning of Synchronous Cooperative Motion Control between Robot and Positioner for Complex Space Curve Processing

In this paper, we propose a synchronous cooperative path planning (SCPP) algorithm for the robot and the positioner to process complex space curve workpieces. The specific algorithm design is illustrated by using the intersecting line welding as an example. The robot and positioner are regarded as an 8-degree-of-freedom (DOF) system to plan the whole synchronous cooperative motion path, and the constraint for the Y-axis of the welding torch coordination system is added for solving the intersecting line orientation information. SCPP is used to process the intersecting line. The changes of welding torch orientation and robot joint rotation angles during welding of the intersecting line by using the improved method and compared to the traditional method. The experimental results show that 8-DOF keeps synchronous cooperative in the whole movement. There is no interference happening during the entire cooperative movement and the welding torch’s orientation remains basically unchanged during the welding intersecting line.


Introduction
Currently, robots are being increasingly used in different fields. Researchers have focused their attentions on these different fields, mainly including structural design, dynamics, motion control, and vision control [1][2][3][4]. In the industrial field, there is an increasing demand for the processing of complex space-curve workpieces, and motion control is particularly important in the processing. However, the operation of a single robot's work does not meet the processing requirements of the workpieces. Therefore, the robot system gradually moves from a single robot to robot flexible processing unit [5][6][7][8] or workstation [9][10][11][12] direction development. For example, the intersecting line welding is a complex space curve, and the welding seam always needs to be placed in the ship-shaped welding seam pose in order to ensure the welding quality of the intersecting line. Thus, a welding workstation composed of a robot and a positioner is the optimal choice for welding this complex space curve [13]. In the welding processing, the positioner rotates the ship-shaped welding seam pose for each welding seam interpolation point, and then the robot moves through each interpolation point to complete the welding. The redundant degrees of freedom (DOF) brought by the positioner can prevent the robot from generating large orientation movements and allow the robot to work in a reasonable area.
There are two types of motion according to the motion coordination relationship between the robot and positioner. They are asynchronous motion [3,14] and cooperative motion [15][16][17]. Asynchronous motion means that the robot and the positioner move independently without coordination. Cooperative motion means the robot and the positioner move cooperatively, which is the mainstream motion (1) Motion path planning of the robot and the positioner: The current research focus is on the path planning of the robot and the positioner during the processing path of the workpiece. To ensure processing accuracy, Jouaneh et al. [10] firstly proposed a processing strategy of collaborative motion between positioner and robot. This strategy used the method of constant speed to track the path to make the 5-DOF robot and 2-DOF positioner move simultaneously. Shi et al. [18] studied robots' and positioners' trajectory planning in the process of coordinated welding of intersecting tubes, and Shi et al. proposed an algorithm for generating motion codes for welding intersecting tubes. This algorithm used the welding speed control as the basis of the industrial robot's trajectory planning, and it can prevent the cable winding up. Wu et al. [12] proposed a trajectory planning strategy for the coordinated movement of a 6-DOF manipulator and a 2-DOF positioner. This strategy used AutoCAD for offline trajectory planning and then converted them into robot language. Liu et al. [15] proposed a new laser scanning based non-ideal tube intersection curve robot welding path planning method. This method integrated the generation of a laser scanning trajectory and the path planning of non-ideal tube welding to avoid the negative impact of the uphill and downhill welding quality on the welding. The research focus of these scholars is the path planning of robots and positioners on the processing path, and the path before and after the processing path is not systematically planned. (2) Solving the pose information of complex space curves and robot end tools: The current research focuses on the curve dispersion and the determination of the normal direction of the tool at the end of the robot [19,20]. Liu et al. [21] suggested a pose planning method for the welding torch at the normal plane dividing angle. This method can position the welding torch at the center of two cylinders and the intersecting curve. Compared to the traditional axial rotating plane dividing angle method, it can ensure the welding torch is always in the best pose. In the process of welding trajectory planning, according to the limitation of string error, Liu et al. [22] introduced a discrete algorithm of fitting intersection curves based on the principle of equal arc length and the position and orientation of the welding torch were given in the form of the matrix. This algorithm can effectively reduce the fluctuation of the feed rate. Liu et al. [23] proposed a discrete method for robot offline programming welding. According to the string error limit and the principle of equal arc length, a discrete method for the intersection curve of the tube was given. This algorithm solved the linearity of the complex curve in the robot control system and guarantees the accuracy of robot intersection curve welding. In the process of solving the pose information, the change of the tool orientation during the entire processing process is not considered, which often makes the tool orientation change too large. In the welding process, when the change of the torch orientation is random, it will make the orientation of the end of the welding torch change too much, resulting in the weakening of the interaction degree of the weld pool and the control force on the arc [24,25]. Therefore, the width and residual height of the weld are uneven, and the weld width at the back is discontinuous. (3) Cooperative motion control of robots and positioners: Many scholars often regard robot and positioner as two independent working units for motion control. Gao et al. [14] proposed a new strategy to optimize the motion of robots and positioners in redundant robot systems. This strategy transformed the continuous problems in the original motion for discrete problems and described all possible movements of the robot and positioner in a combined manner. Using this method can improve computational efficiency and also take collision constraints into account. Shao et al. [16] established a coupled mathematical model of arc welding robot and positioner for the coordinated motion of the arc welding robot and positioner. This model can strongly couple the arc welding robot and the positioner during the process of welding movement. The motion process was simulated under the MATLAB simulation environment to verify that the model established can precisely reflect the accuracy of the coupling motion of the arc welding robot positioner.
My et al. [17] proposed a new inverse kinematics solution algorithm. The algorithm unifies two kinematic chains of the robot and the positioner into an open redundant serial kinematic chain of the entire robot system. This algorithm minimized the errors between the ideal welding path and the actual welding path and effectively improves the positioning accuracy of the end tool. Many scholars often regard robot and positioner as two independent working units for motion control. At this time, the relationship between the robot and the positioner is a master-slave relationship; when the robot reaches the first processing point and returns to zero, the positioner is in a stagnation waiting state [26]. This waiting time extends the entire cycle of the robot and the positioner's coordinated motion, making the cooperative motion cycle time longer and less efficient.
The objective of this paper is to realize the synchronous cooperative processing of intersecting line workpiece by the robot and the positioner, to solve the problem of interference in the path before and after the processing in the synchronous movement process, and ensure the stability of the welding process to improve the quality of weld formation. Thus, a synchronous cooperative path planning (SCPP) algorithm of robot and positioner is put forward. The contributions of this paper are as follows: (1) The robot and the positioner are regarded as a complete 8-DOF system to solve the problem of asynchronous motion between the robot and the positioner so that there is no master-slave relationship between the robot and the positioner, but a synchronous cooperation. The freedom of movement of the robot and the positioner can be fully utilized, which improves the processing efficiency; (2) The 8-DOF system model is used for path planning through rigorous mathematical derivation to calculate the poses of the two transition points, and then the motion path of the 8-DOF system before and after processing is planned. This planning method has a small amount of calculation and strong practicality. It can be applied to the robot and the positioner in different poses and different sizes of workpieces. The robot and the positioner are ensured synchronous movement without interference; (3) An improved method to solve the orientation information of a complex space curve is proposed, which causes the rotation range of the six axes of the robot to decrease during welding the intersecting line, and at the same time, keeps the welding torch orientation basically unchanged. This method has strong regularity in adjusting the welding torch orientation. During the welding process, it has high control over the welding pool, and always maintains the relative balance of the welding pool distribution, and finally obtains full penetration and beautiful continuous post-weld welding seam width and consistent forming effect.
The design framework of the SCPP is shown in Figure 1.
Electronics 2020, 9, x FOR PEER REVIEW 3 of 23 serial kinematic chain of the entire robot system. This algorithm minimized the errors between the ideal welding path and the actual welding path and effectively improves the positioning accuracy of the end tool. Many scholars often regard robot and positioner as two independent working units for motion control. At this time, the relationship between the robot and the positioner is a master-slave relationship; when the robot reaches the first processing point and returns to zero, the positioner is in a stagnation waiting state [26]. This waiting time extends the entire cycle of the robot and the positioner's coordinated motion, making the cooperative motion cycle time longer and less efficient.
The objective of this paper is to realize the synchronous cooperative processing of intersecting line workpiece by the robot and the positioner, to solve the problem of interference in the path before and after the processing in the synchronous movement process, and ensure the stability of the welding process to improve the quality of weld formation. Thus, a synchronous cooperative path planning (SCPP) algorithm of robot and positioner is put forward. The contributions of this paper are as follows: (1) The robot and the positioner are regarded as a complete 8-DOF system to solve the problem of asynchronous motion between the robot and the positioner so that there is no master-slave relationship between the robot and the positioner, but a synchronous cooperation. The freedom of movement of the robot and the positioner can be fully utilized, which improves the processing efficiency; (2) The 8-DOF system model is used for path planning through rigorous mathematical derivation to calculate the poses of the two transition points, and then the motion path of the 8-DOF system before and after processing is planned. This planning method has a small amount of calculation and strong practicality. It can be applied to the robot and the positioner in different poses and different sizes of workpieces. The robot and the positioner are ensured synchronous movement without interference; (3) An improved method to solve the orientation information of a complex space curve is proposed, which causes the rotation range of the six axes of the robot to decrease during welding the intersecting line, and at the same time, keeps the welding torch orientation basically unchanged. This method has strong regularity in adjusting the welding torch orientation. During the welding process, it has high control over the welding pool, and always maintains the relative balance of the welding pool distribution, and finally obtains full penetration and beautiful continuous post-weld welding seam width and consistent forming effect.
The design framework of the SCPP is shown in Figure 1.   The rest of the paper is organized as follows: In Section 2, the path planning before and after processing of 8-DOF system synchronous cooperative motion is proposed. Section 3 proposes an improved orientation information solution method for intersecting line. The Section 4 introduces the design of SCPP algorithm of robot and positioner. Experimental results and discussions are provided in Section 5, and finally conclusions are drawn in Section 6.

8-DOF System Synchronous Cooperative Motion Path Planning before and after Processing
In the welding workstation for a complex space curve (intersecting line), the robot and the positioner are usually placed in an opposite and fixed positions. The workpiece is generally placed above the positioner's worktable. The movements of the positioner mainly include the horizontal and vertical rotational motion, and the horizontal axis and vertical axis of the positioner are defined as 7-axis and 8-axis, respectively. Then the robot and positioner form an 8-DOF motion system, and it can move in the synchronous cooperative pattern. The intersection point of the 7-axis and the 8-axis is defined as the origin of the positioner coordinate system. The Z-axis of the positioner coordinate system coincides with the Z-axis of the 7-axis coordinate system, and its Y-axis coincides with the Z-axis of the 8-axis coordinate system, as shown in Figure 2. The rest of the paper is organized as follows: In Section 2, the path planning before and after processing of 8-DOF system synchronous cooperative motion is proposed. Section 3 proposes an improved orientation information solution method for intersecting line. The Section 4 introduces the design of SCPP algorithm of robot and positioner. Experimental results and discussions are provided in Section 5, and finally conclusions are drawn in Section 6.

8-DOF System Synchronous Cooperative Motion Path Planning before and after Processing
In the welding workstation for a complex space curve (intersecting line), the robot and the positioner are usually placed in an opposite and fixed positions. The workpiece is generally placed above the positioner's worktable. The movements of the positioner mainly include the horizontal and vertical rotational motion, and the horizontal axis and vertical axis of the positioner are defined as 7-axis and 8-axis, respectively. Then the robot and positioner form an 8-DOF motion system, and it can move in the synchronous cooperative pattern. The intersection point of the 7-axis and the 8-axis is defined as the origin of the positioner coordinate system. The Z-axis of the positioner coordinate system coincides with the Z-axis of the 7-axis coordinate system, and its Y-axis coincides with the Z-axis of the 8-axis coordinate system, as shown in Figure 2. In the synchronous cooperative movement of 8-DOF system, the welding torch at the end of the robot may interfere with the workpiece before/after the processing of the workpiece if the height of the workpiece is high. Therefore, we propose to plan the path before and after the processing.

8-DOF System Synchronous Cooperative Motion Path Planning before Processing
Analyzing the process of the positioner turns the first welding point (F) on the welding seam to the pose of the ship-shaped welding seam. From the initial position to the F, the rotation angles of the 7-axis and 8-axis turn 45° and 90°, respectively. In this process, only 7-axis rotation will change the vertical height from the highest point of the workpiece to the origin of the positioner, and thus causing the interference problem. To solve this problem, a middle position point is set before the robot tool center point (TCP) reaches the F, and named as transition point 1 (P1). Before the robot processing the workpiece, the path planning contains two paths, one is from the robot origin (T) to P1, and another is from P1 to F (In Figure 3). In the synchronous cooperative movement of 8-DOF system, the welding torch at the end of the robot may interfere with the workpiece before/after the processing of the workpiece if the height of the workpiece is high. Therefore, we propose to plan the path before and after the processing.

8-DOF System Synchronous Cooperative Motion Path Planning before Processing
Analyzing the process of the positioner turns the first welding point (F) on the welding seam to the pose of the ship-shaped welding seam. From the initial position to the F, the rotation angles of the 7-axis and 8-axis turn 45 • and 90 • , respectively. In this process, only 7-axis rotation will change the vertical height from the highest point of the workpiece to the origin of the positioner, and thus causing the interference problem. To solve this problem, a middle position point is set before the robot tool center point (TCP) reaches the F, and named as transition point 1 (P 1 ). Before the robot processing the workpiece, the path planning contains two paths, one is from the robot origin (T) to P 1 , and another is from P 1 to F (In Figure 3).
The pose changes of the robot and the positioner from T to P 1 are shown in Figure 4a. The pose of robot welding torch and positioner are adjusted before they reach the P 1 . Thus, the angle of positioner 7-axis is rotated α, and the welding torch is vertically downward. When the pose changes the robot and the positioner from P 1 to F, the angle of positioner 7-axis is rotated 45 • and the robot moves from P 1 to F (Figure 4b).
Electronics 2020, 9,1917 5 of 22 Electronics 2020, 9, x FOR PEER REVIEW 5 of 23  The positions of points P1 and F are shown in Figure 5. The parameters in Figure 5 are defined as following: The distance between the rotation center of the positioner's 7-axis and the plane of the workpiece table is h1; the distance between the plane of the workpiece table and the plane of the workpiece branch pipe is h2; the main radius is R and the radius of the branch pipe is r. The 7-axis rotation center O7 of the positioner is regarded as the foundation to build the coordinate system on, and the initial position of the robot TCP is T(Δx, Δy).   45°T The positions of points P1 and F are shown in Figure 5. The parameters in Figure 5 are defined as following: The distance between the rotation center of the positioner's 7-axis and the plane of the workpiece table is h1; the distance between the plane of the workpiece table and the plane of the workpiece branch pipe is h2; the main radius is R and the radius of the branch pipe is r. The 7-axis rotation center O7 of the positioner is regarded as the foundation to build the coordinate system on, and the initial position of the robot TCP is T(Δx, Δy). The positions of points P 1 and F are shown in Figure 5. The parameters in Figure 5 are defined as following: The distance between the rotation center of the positioner's 7-axis and the plane of the workpiece table is h 1 ; the distance between the plane of the workpiece table and the plane of the workpiece branch pipe is h 2 ; the main radius is R and the radius of the branch pipe is r. The 7-axis rotation center O 7 of the positioner is regarded as the foundation to build the coordinate system on, and the initial position of the robot TCP is T(∆x, ∆y). The rotation trajectory of the left vertex of the workpiece branch pipe is an arc, and its radius is expressed as: The rotation trajectory of the left vertex of the workpiece branch pipe is an arc, and its radius is expressed as: In addition, points on the arc are satisfied by the equation: Make the tangent of the arc through the initial position T. The tangent intersects the axis O 7 at P (0, H). The equation of the tangent constructed by P and T is: The tangent Equation (3) can be rewritten as: The vertical distance between the origin O 7 and the tangent is also the radius of arc R c , which is expressed as: Equation (6) is obtained by combining Equations (1) and (5): Equation (6) is transformed into Equation (7): where, Since P is located above the origin O 7 , H is calculated as: To ensure safety and avoid the interference, the trajectories of TCP will be set at the top arc tangent. P 1 is taken above P . A safe distance ∆d between P and P 1 generally is set as ∆d ≥ 10 mm. The coordinates of P 1 are (0, y p1 ) and the y p1 is expressed as: The distance of the path TP 1 between the initial position T and the transition point P 1 is: Electronics 2020, 9, 1917 7 of 22 F(x F , y F ) are the first welding point coordinates and K(x K , y K ) is a point on the 45 • line (Figure 5b). The coordinates of K are expressed as: F and K are on a line with an inclination angle of 45 • , so the coordinates of point F are expressed as: The distance of the path P 1 F is calculated as: Assume that the 8-DOF system moves at a constant speed. When TCP is in P 1 , the rotation angle α of 7-axis of the positioner is expressed as: Through α, P 1 , and F, the movement angle of the entire 8-DOF system can be calculated. The path TP 1 and the path P 1 F constitute the path before processing of the robot and can avoid interference; furthermore, the two paths are linear trajectories which can reduce the TCP moving distance.

8-DOF System Synchronous Cooperative Motion Path Planning after Processing
When the entire intersecting line is welded completely, the workpiece has rotated one revolution (the last welding point coincides with the first welding point): the 7-axis rotation angle is 45 • , and the 8-axis rotation angle is −270 • (the 90 • rotation angle). The 8-DOF system returns to the original position, which means the 7-axis and 8-axis moved to the 0 • position at the same time. Before the TCP returns to T, first set a middle position point as transition point 2 (P 2 ). The 8-DOF system path after processing is shown in Figure 6, where TCP is from the last welding point (E) to P 2 , and then returns to T.   The safe distance between the P′ and the P2 is ΔD, the coordinates of P2 are (0, yp2), yp2 can be expressed as: The position of the last welding point E is the same as the first welding point F, and the distance of the path EP2 is: Assume that the 8-DOF system moves at a constant speed. When TCP is in P2, the rotation angle β of 7-axis of the positioner is expressed as: The safe distance between the P and the P 2 is ∆D, the coordinates of P 2 are (0, y p2 ), y p2 can be expressed as: The position of the last welding point E is the same as the first welding point F, and the distance of the path EP 2 is: Assume that the 8-DOF system moves at a constant speed. When TCP is in P 2 , the rotation angle β of 7-axis of the positioner is expressed as: Through β, P 2 , and E, the movement angle of the entire 8-DOF system can be calculated. The path EP 2 and the path P 2 T constitute the path after processing.

Improved Method of Solving Orientation Information for Complex Space Curve
The improved method of solving orientation information for complex space curves is illustrated by using the intersecting lines as an example.

The Position Information Solution of Complex Space Curve (Intersecting Line)
The general form of intersecting lines is obliquely offset (Figure 8). The origin of the main tube coordinate system is O 1 , and the origin of the branch tube coordinate system is O 2 . R and r represent the main tube radius and the branch tube radius, respectively. δ denotes the intersection angle between two tubes, and σ is the eccentricity of the two intersecting tube centers.

The Position Information Solution of Complex Space Curve (Intersecting Line)
The general form of intersecting lines is obliquely offset (Figure 8). The origin of the main tube coordinate system is O1, and the origin of the branch tube coordinate system is O2. R and r represent the main tube radius and the branch tube radius, respectively. δ denotes the intersection angle between two tubes, and σ is the eccentricity of the two intersecting tube centers.  (18) and (19), respectively.   ϕ is the angle between the discrete points on the intersecting line projected onto the plane X 1 O 1 Z 1 (X 2 O 2 Z 2 ) and the coordinate axis X 1 (X 2 ). The range of ϕ is (0, 2π). According to ϕ, the coordinates of each discrete point on the intersecting line can be calculated. The position calculation formulas of the intersecting line in the branch tube coordinate system and the main tube coordinate system are Equations (18) and (19), respectively.

Traditional Method of Solving Orientation Information for Complex Space Curve (Intersecting Line)
After obtained the position information of each interpolation point on the intersecting line, the orientation information of each interpolation point should be calculated.
In Figure 8, vector S 3 is the tangential vector of any interpolation point P on the intersecting line, as well as the X-axis direction vector of the welding torch coordinate system {T}. Vector S 4 is the horizontal vector of any interpolation point P on the intersecting line, and the opposite direction of S 4 is the Y-axis vector of the welding torch coordinate system {T}. Vector S 5 is the normal vector of any interpolation point P on the intersecting line, and the opposite direction of S 5 is the Z-axis vector of the welding torch coordinate system {T}.
Based on Equation (19), the vector S 1 (X 1 , Y 1 , Z 1 ) of the main-tangent plane at the interpolation point is expressed as: According to Equation (18), the vector S 2 (X 2 , Y 2 , Z 2 ) of the main-tangent plane at the interpolation point is expressed as: S 2 = (X 2 , Y 2 , Z 2 ) = (r sin ϕ + σ, −r cos ϕ sin δ, r cos ϕ cos δ) Through the cross product of S 1 and S 2 , the vector S 3 (X 3 , Y 3 , Z 3 ) can be solved for: The vector S 5 (X 5 , Y 5 , Z 5 ) is the sum of the vectors S 1 and S 2 . The vector S 5 is essentially the vector representation of the dihedral angle bisector of the interpolation point, with the direction pointing out of the workpiece.
The vector S 4 (X 4 , Y 4 , Z 4 ) is the vector cross product of S 3 and S 5 .
Take an intersection line as an example to draw the intersecting line path and welding torch orientation diagram in the main tube coordinate system, as shown in Figure 9. This intersecting line main tube radius R = 100 mm, the branch tube radius r = 40 mm, the intersecting angle δ = 90 • , and the eccentricity σ = 0 mm. The number of interpolation points N is set as 200.
point is expressed as: According to Equation (18), the vector S2(X2, Y2, Z2) of the main-tangent plane at the interpolation point is expressed as: Through the cross product of S1 and S2, the vector S3(X3, Y3, Z3) can be solved for: The vector S5(X5, Y5, Z5) is the sum of the vectors S1 and S2. The vector S5 is essentially the vector representation of the dihedral angle bisector of the interpolation point, with the direction pointing out of the workpiece.
Take an intersection line as an example to draw the intersecting line path and welding torch orientation diagram in the main tube coordinate system, as shown in Figure 9. This intersecting line main tube radius R = 100 mm, the branch tube radius r = 40 mm, the intersecting angle δ = 90°, and the eccentricity σ = 0 mm. The number of interpolation points N is set as 200. When the robot welding torch encircles the intersecting line path, the vector direction of the X-axis of the welding torch coordinate system also follows the intersecting line path for one full When the robot welding torch encircles the intersecting line path, the vector direction of the X-axis of the welding torch coordinate system also follows the intersecting line path for one full rotation (Figure 9), that is, the welding torch itself will rotate 360 • during the processing, this process will inevitably cause the wire feed line of the welding torch to collide with the robot arm. Therefore, an improved method of solving orientation information for intersecting lines needs to be proposed.
The essence of vector S 5 is the vector of dihedral angle bisector at the interpolation point, so vector S 5 cannot be changed at will. S 3 is the vector direction of the X-axis of the welding torch coordinate system. S 3 , S 4 , and S 5 are perpendicular to each other and S 3 can be solved by the cross product of S 4 and S 5 . The orientation information on the improved intersecting line can be considered to change of S 3 firstly.

Improved Method of Solving Orientation Information for Complex Space Curve (Intersecting Line)
To solve the orientation information for complex space curves (intersecting line), the S 4 is given a constant direction at the beginning, and so S 3 will only be affected by S 5 direction in the improved method. The direction vector of the Z-axis changes a little in Figure 9, so after S 4 is determined, the direction vector of the X-axis will change a little and not follow the path of the intersecting line to rotate one full circle. Figure 10, and the steps are summarized as follows:

The improved orientation information solution method is shown in
(1) The vector S 5 can be obtained by solving Formula (23); (2) Reverse S 5 to get the unit vector S 5 , which is the Z-axis unit vector of the welding torch coordinate system; (3) The vector S 4 = (0, −1, 0) is preliminarily determined, it can help prevent the end welding torch's orientation from changing too much during the movement; (4) Get the X-axis unit vector S 3 of welding torch coordinate system: S 3 = S 4 × S 5 ; (5) Get the Y-axis unit vector S 4 of welding torch coordinate system: S 4 = S 5 × S 3 .

Improved Method of Solving Orientation Information for Complex Space Curve (Intersecting Line)
To solve the orientation information for complex space curves (intersecting line), the S4 is given a constant direction at the beginning, and so S3 will only be affected by S5 direction in the improved method. The direction vector of the Z-axis changes a little in Figure 9, so after S4 is determined, the direction vector of the X-axis will change a little and not follow the path of the intersecting line to rotate one full circle.
The improved orientation information solution method is shown in Figure 10, and the steps are summarized as follows: (1) The vector 5 S′ can be obtained by solving Formula (23); (2) Reverse 5 S′ to get the unit vector S5, which is the Z-axis unit vector of the welding torch coordinate system; (3) The vector 4 S = (0, 1,0) ′ − is preliminarily determined, it can help prevent the end welding torch's orientation from changing too much during the movement; (4) Get the X-axis unit vector S3 of welding torch coordinate system: 3 4 5 S =S S ′ × ; (5) Get the Y-axis unit vector S4 of welding torch coordinate system: 4 5 3 S =S S × . The same parameters are set as in Figure 9, the intersecting line path and improved welding torch orientation are drawn in the main tube coordinate system, as shown in Figure 11. The same parameters are set as in Figure 9, the intersecting line path and improved welding torch orientation are drawn in the main tube coordinate system, as shown in Figure 11. In Figure 11, the X-axis direction vector of the welding torch is basically pointing in the positive direction of the X-axis of the main tube coordinate system, and the Y-axis and Z-axis direction vectors also change little. This ensures that the welding torch will not rotate one revolution when the robot welds the intersection line.

Process of SCPP Algorithm of Robot and Positioner
It is known that the distance from the 7-axis rotation center of the positioner to the upper surface of the workpiece table is h1, the distance from the upper surface of the workpiece table to the upper surface of the workpiece branch is h2, the radius of the main pipe is R, the radius of the branch pipe is r, the intersection angle is δ, the eccentricity is σ, the number of interpolation points is N, and other parameters. Through the solving methods introduced in Sections 2 and 3, the position of the motion interpolation points of the 8-DOF system in the whole process are obtained, and the synchronous cooperative motion path of the robot and the positioner are planned. The overall In Figure 11, the X-axis direction vector of the welding torch is basically pointing in the positive direction of the X-axis of the main tube coordinate system, and the Y-axis and Z-axis direction vectors also change little. This ensures that the welding torch will not rotate one revolution when the robot welds the intersection line.

Process of SCPP Algorithm of Robot and Positioner
It is known that the distance from the 7-axis rotation center of the positioner to the upper surface of the workpiece table is h 1 , the distance from the upper surface of the workpiece table to the upper surface of the workpiece branch is h 2 , the radius of the main pipe is R, the radius of the branch pipe is r, the intersection angle is δ, the eccentricity is σ, the number of interpolation points is N, and other parameters. Through the solving methods introduced in Sections 2 and 3, the position of the motion interpolation points of the 8-DOF system in the whole process are obtained, and the synchronous cooperative motion path of the robot and the positioner are planned. The overall process of the SCPP algorithm of robot and positioner is shown in Figure 12. The overall process can be summarized in the following steps:  The overall process can be summarized in the following steps: , and a total of N + 2 control data. Following the sequence, the robot and the positioner move from zero to transition point 1, then move to N ship welding interpolation points, and then move to transition point 2, and finally return to the zero position, the control data will be stored in the synchronous cooperative control data buffer, and finally distributed successively.

Experimental Results and Discussion
The welding workstation is mainly composed of a robot, two-axis positioner, electrical control cabinet, intersecting line workpiece, industrial control computer, and control software, as shown in Figure 13. The 8-DOF (6-DOF robot and two-axis positioner) system control software is developed independently by our group, which provides convenience for algorithm verification and data acquisition.
Electronics 2020, 9, x FOR PEER REVIEW 14 of 23 (8) In the synchronous coordinated movement of the whole robot and the positioner, there are N discrete points poses of welding seams, transition point 1 pose, transition point 2 pose, and a total of N + 2 control data. Following the sequence, the robot and the positioner move from zero to transition point 1, then move to N ship welding interpolation points, and then move to transition point 2, and finally return to the zero position, the control data will be stored in the synchronous cooperative control data buffer, and finally distributed successively.

Experimental Results and Discussions
The welding workstation is mainly composed of a robot, two-axis positioner, electrical control cabinet, intersecting line workpiece, industrial control computer, and control software, as shown in Figure 13. The 8-DOF (6-DOF robot and two-axis positioner) system control software is developed independently by our group, which provides convenience for algorithm verification and data acquisition. In practical engineering applications, the distance between the robot base coordinate system and the positioner base coordinate system is usually within the range of 1/4 to 2/3 of the robot's arm span. In the experiment, the API Radian laser tracker was used to calibrate the pose transformation matrix of the robot and the positioner. The pose transformation matrix is shown as follows: The TCP pose of the robot is (790.013, 0.07, 1120.716, 180.021, 35.13, 0.09). The sizes of the positioner and the intersecting line workpiece are measured as: h1 = 213.5 mm, h2 = 287 mm, R = 85 mm, r = 70 mm, δ = 90°, and σ = 0 mm. The safety distance Δd and ΔD are set as 10 In practical engineering applications, the distance between the robot base coordinate system and the positioner base coordinate system is usually within the range of 1/4 to 2/3 of the robot's arm span. In the experiment, the API Radian laser tracker was used to calibrate the pose transformation matrix of the robot and the positioner. The pose transformation matrix is shown as follows: The TCP pose of the robot is (790.013, 0.07, 1120.716, 180.021, 35.13, 0.09). The sizes of the positioner and the intersecting line workpiece are measured as: h 1 = 213.5 mm, h 2 = 287 mm, R = 85 mm, r = 70 mm, δ = 90 • , and σ = 0 mm. The safety distance ∆d and ∆D are set as 10 mm and 50 mm, respectively.

Traditional Cooperative Motion Process (Positioner Is Active and Robot Is Driven)
In the traditional cooperative motion, the robot and the positioner are a master-slave relationship. The whole process of traditional cooperative movement is shown in Figure 14. Before processing of the intersecting line, the robot is waiting for the positioner's movement. After the processing is completed, the positioner remains stationary until the robot returns to zero and then back to zero. These increase the movement time and affect the efficiency of the entire cooperative movement.

Synchronous Cooperative Motion Process
The positions of P1 and P2 can be calculated based on the h1, h2, R, r, Δd, and ΔD (Section 2). The angle value of axes 1-8 at P1 and P2 are calculated by the kinematics of the robot and the positioner (in Table 1).  Before processing of the intersecting line, the robot is waiting for the positioner's movement. After the processing is completed, the positioner remains stationary until the robot returns to zero and then back to zero. These increase the movement time and affect the efficiency of the entire cooperative movement.

Synchronous Cooperative Motion Process
The positions of P 1 and P 2 can be calculated based on the h 1 , h 2 , R, r, ∆d, and ∆D (Section 2). The angle value of axes 1-8 at P 1 and P 2 are calculated by the kinematics of the robot and the positioner (in Table 1). The path before processing of intersecting line, the welding path of intersecting lines, and the path after processing compose a complete synchronous cooperative motion path. Each axis' rotation angle values of the 8-DOF system in the entire synchronous cooperative movement is calculated by the SCPP method. The welding torch did not interfere with the workpiece (in Figure 15), which indicates that the setting of planned points of P 1 and P 2 is effective. The path before processing of intersecting line, the welding path of intersecting lines, and the path after processing compose a complete synchronous cooperative motion path. Each axis' rotation angle values of the 8-DOF system in the entire synchronous cooperative movement is calculated by the SCPP method. The welding torch did not interfere with the workpiece (in Figure 15), which indicates that the setting of planned points of P1 and P2 is effective. The experiment proved that SCPP causes the 8-DOF system to move at the same time, which can avoid the time wasting caused by waiting and improve the work efficiency. No interference occurs between the robot, the workpiece, and the positioner, which verifies that the SCPP can effectively prevent the interference problem.

Comparison of Two Orientation Information Methods
In the process of the synchronous cooperative movement, the traditional method of solving the orientation information for intersecting lines is used to process the intersecting line, and angle changes of the robot and the positioner during the entire movement are recorded ( Figure 16). It can The experiment proved that SCPP causes the 8-DOF system to move at the same time, which can avoid the time wasting caused by waiting and improve the work efficiency. No interference occurs between the robot, the workpiece, and the positioner, which verifies that the SCPP can effectively prevent the interference problem.

Comparison of Two Orientation Information Methods
In the process of the synchronous cooperative movement, the traditional method of solving the orientation information for intersecting lines is used to process the intersecting line, and angle changes of the robot and the positioner during the entire movement are recorded ( Figure 16). It can be seen that the range of joint rotation angle of the robot is large, especially the 6-axis motion range, which is more than 100 • . After using the improved method (Figure 17), the rotation angles of the axis 7 and axis 8 of the positioner have not changed, but when welding the intersecting line, the variation range of the robot's 6 axes is greatly reduced, and the fluctuation is smoother. From the vertical dotted line in the process of welding the intersecting line in the two figures, it can be seen that when the robot and the positioner are used as an 8-DOF system for path planning, eight joint angles have changed synchronously in time sequence and to complete the entire synchronous cooperative movement. The specific joint angle values are summarized in Table 2.
The angle changes from axes 1 to 8 during the welding process which were obtained from the two methods (Figures 16 and 17) were compared in Table 2. During the process of welding intersecting lines, axis 2 and axis 3 cause the height change of the welding torch, while axis 5 and axis 6 cause the orientation change of the welding torch. Using the improved method, the robot's 6 axes change range is reduced, the angle change of axis 6 has the greatest change among the other axes. Its angle change range decreased by 17.6 • , which indicates that the improved method can reduce the range of welding torch orientation change. The changes in axis 3 were reduced by 14.3 • , it indicates that there is a small change in the welding torch height. Axis 2 and axis 5 were reduced to 5.5 • and 2.9 • , respectively. In addition, the range of variation of axis 1 and axis 4 also decrease correspondingly. Compared with the traditional method, the improved method makes the robot movement more efficient and enables the robot to complete complex processing tasks with a small angle change.   Note: TA_Min, TA_Max, and ∆TA are the minimum angle, the maximum angle, and the difference between the maximum angle and the minimum angle by using traditional methods. IA_Min, IA_Max, and ∆IA are the minimum angle, the maximum angle, and the difference between the maximum angle and the minimum angle by using improved method.
The robot's positive kinematics calculate the real-time orientation of the welding torch by using the real-time angles of the robot's 6 axes during the synchronous coordinated movement (Figure 18). The value of torch orientation changes during the welding intersecting lines obtained by using two methods are shown in Table 3. The value of torch-orientation changes using the improved method are smaller than those calculated by the traditional method. In the process of welding the intersecting line, the main movement of the welding torch is rotation around the Z-axis. The rotation angle of the welding torch around the Z-axis is within the range of 73.163 • -105.072 • when using the traditional method. However, the range of welding torch Z-axis rotation is only from −0.185 • to 0.196 • using the improved method. In addition, the change ranges of the X-axis and the Y-axis of the welding torch also decreases accordingly. The reduction in three directions can improve the stability of the welding.  Note: TR_Min, TR_Max, and ΔTR are the minimum rotation angle, the maximum rotation angle, and the difference between the maximum rotation angle and the minimum rotation angle by using the traditional method. IR_Min, IR_Max, and ΔIR are the minimum rotation angle, the maximum rotation angle, and the difference between the maximum rotation angle and the minimum rotation angle by using the improved method.

Validation of SCPP Algorithm Effectiveness and Robustness
In order to validate the reliability and robustness of the SCPP, experiments are carried out for two work situations: The sizes of the intersecting line workpiece are set as: δ = 90° and σ = 0 mm. The safety distance Δd and ΔD are set as 10 mm and 50 mm, respectively. The API Radian laser tracker was used to calibrate the initial pose transformation matrix of the robot and the positioner. The pose transformation matrix is shown as follows: (1) In different positions, the same size (R = 85 mm, r = 70 mm, h2 = 287 mm) workpiece was processed. The experiment was repeated ten times under each experimental condition and the mean variation range of the robot's six axes was recorded (the difference between the maximum and minimum rotation angles) ( Table 4). After using SCPP, the reduction of the robot's six axes variation ranges are shown in Table 5.  Note: TR_Min, TR_Max, and ∆TR are the minimum rotation angle, the maximum rotation angle, and the difference between the maximum rotation angle and the minimum rotation angle by using the traditional method. IR_Min, IR_Max, and ∆IR are the minimum rotation angle, the maximum rotation angle, and the difference between the maximum rotation angle and the minimum rotation angle by using the improved method.

Validation of SCPP Algorithm Effectiveness and Robustness
In order to validate the reliability and robustness of the SCPP, experiments are carried out for two work situations: The sizes of the intersecting line workpiece are set as: δ = 90 • and σ = 0 mm. The safety distance ∆d and ∆D are set as 10 mm and 50 mm, respectively. The API Radian laser tracker was used to calibrate the initial pose transformation matrix of the robot and the positioner. The pose transformation matrix is shown as follows: (1) In different positions, the same size (R = 85 mm, r = 70 mm, h 2 = 287 mm) workpiece was processed. The experiment was repeated ten times under each experimental condition and the mean variation range of the robot's six axes was recorded (the difference between the maximum and minimum rotation angles) ( Table 4). After using SCPP, the reduction of the robot's six axes variation ranges are shown in Table 5. (2) Processing different size workpieces in the same position (X = 1128.958, Y = −22.684, Z = 744.691). The size differences are reflected in three aspects: R, r, and h 2 . This experiment was repeated ten times under each experimental condition and the mean variation range of robot's six axes was recorded ( Table 6). After using SCPP, the reduction of the robot's 6 six axes variation ranges are shown in Table 7.  Through repeated experiments on the same size and different size workpieces, the decreases of the rotation range of six axes of the robot after using SCPP is from 3.57 to 89.54%. Meanwhile, the robot and the positioner can work synchronously without interference. In conclusion, the reliability and robustness of the SCPP algorithm proposed in this paper are verified by experimental results.

Conclusions
In this paper, a SCPP algorithm is proposed to achieve the synchronous cooperative movement. Two transition points are planned in the path before and after processing to avoid interference, and the direction of the Y-axis of the tool coordinate system at the end of the robot is constrained to avoid excessive changes in the tool's orientation. The experiment results show that the welding torch did not collide with the intersecting line workpiece at the transition point, and there is no interference during the entire processing procedure. By using the improved method of solving orientation information for intersecting lines, the rotation angle of the six axes of the robot are reduced and the welding torch's orientation remains basically unchanged during the process of welding intersecting lines. The range of motion angle of all the joints of the robot decreases by 63.12-89.54%, and the range of the torch posture decreases by 16.72-98.81%. This method enables the robot to complete complex workpiece processing with a smaller joint motion range and saves more energy. By monitoring the real-time angle change of the 8-DOF system during the movement, the 8-DOF system is in synchronized motion.
The research in this paper is aimed at path planning of the ideal workpiece model; the workpiece size error caused by the processing error is not considered. The problem of error compensation will be further studied in the future. In addition, due to the absolute positioning accuracy of the robot and positioner being less than 1 mm, they can meet actual welding requirements. If it is applied to high-speed and high-precision machining, absolute positioning accuracy in the machining process is required to be less than 0.1 mm, and joint forces and torques need to be controlled to reduce the impact of vibration. Therefore, structural dynamics will be considered.