Next Article in Journal
Preliminary Testing of a Passive Exoskeleton Prototype Based on McKibben Muscles
Previous Article in Journal
Analysis of Vibration Characteristics and Influencing Factors of Complex Tread Pattern Tires Based on Finite Element Method
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Research on Collaboration Motion Planning Method for a Dual-Arm Robot Based on Closed-Chain Kinematics

by
Yuantian Qin
1,*,
Kai Zhang
1,
Kuiquan Meng
2 and
Zhehang Yin
1
1
College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China
2
Shanghai Institute of Spacecraft Equipment, Shanghai 200240, China
*
Author to whom correspondence should be addressed.
Machines 2024, 12(6), 387; https://doi.org/10.3390/machines12060387
Submission received: 2 May 2024 / Revised: 28 May 2024 / Accepted: 29 May 2024 / Published: 4 June 2024
(This article belongs to the Section Automation and Control Systems)

Abstract

:
Aiming to address challenges in the motion coordination of dual-arm robot engineering applications, a comprehensive set of planning methods is devised. This paper takes a dual-arm system composed of two six-degrees-of-freedom industrial robots as the research object. Initially, a transformation model is established for the characteristic trajectories between the workpiece coordinate system and various other coordinate systems. Subsequently, the position and orientation curves of the working trajectory are discretized to facilitate the controller’s execution. Furthermore, an analysis is conducted of the closed-chain kinematics relationship between two arms of the robot and a pose-calibration method based on a reference coordinate system is introduced. Finally, constraints to the collaborative motion of the dual-arm robot are analyzed, leading to the establishment of a motion collaboration planning methodology. Simulations and experiments demonstrate that the proposed approach enables effective and collaborative task planning for dual-arm robots. Moreover, joint angle and angular velocity curves corresponding to the motion trajectory exhibit smoothness, reducing joint impacts.

1. Introduction

With the development of science and technology and the advancement of engineering practices, application scenarios for dual-arm robots are expanding [1,2,3,4,5]. There is increasing focus on the intricate spatial maneuvers achievable by dual-arm robots. Research on these dual-arm systems holds significant importance for enhancing the performance of future robotic platforms.
Research on the coordinated motion of dual-arm robots remains relatively scarce, but recent studies have shed light on the subject. Here is a summary of the current research: Shaoying He [3] introduced timing and prediction controllers to the trajectory planning of a gantry-type dual-arm robot. This approach significantly reduced the programming workload during operations, demonstrating effective motion planning for gantry welding robots. David C [6] categorized dual-arm robots into master–slave motion modes, establishing closed-chain kinematics constraints between the two arms. Offline simulations validated the feasibility and convenience of this method. Xuemei Liu [4] investigated collaborative welding involving three robots in a gantry frame scenario. Kinematics relationships were established among the robots during collaborative movements, assigning picking tasks to the master arm and welding tasks to the slave arm. Feasibility was confirmed through Adams simulations. Avishai S [7] investigated the sampling-based motion planning method for dual-arm robots under closed-chain kinematics, validating its effectiveness through experiments. Riboli M [8] tackled task assignment and motion planning for dual-arm robots in space cooperation settings, employing photoelectric sensors to prevent arm collisions. Jiahao Xiong [9] addressed buffeting issues in dual-arm collaboration welding by introducing a smoothness function. Several welding tracks were evaluated, leading to the selection of the most stable option. Meng Shi [10] explored coupling and superposition motions between arms in dual-arm robot collaboration. A multi-robot trajectory coordination teaching method was proposed and validated through experiments. Yangqiang Hou [11] optimized the collaborative trajectories of a dual-arm robot using a genetic algorithm, selecting the smoothest welding trajectory among various positions and paths. Qichao Tang [12] introduced a novel, discrete, multi-objective, cross-entropy optimization algorithm (CrMOCEO) for dual-robot collaborative arc welding-path-planning, demonstrating its feasibility and effectiveness via simulations. Lei Wang [13] investigated centralized, decentralized, and distributed control approaches for dual-arm robots. Centralized control eliminated communication delays between robots, ensuring effective cooperation. Jens F [5] integrated a dual-arm collaborative robot system in a smart factory and an Industry 4.0 context, with a particular focus on solving complex industrial disassembly tasks. However, this approach depends heavily on the assistance of various high-precision vision sensors and may not be conducive to low-cost or large-scale industrial applications. These studies collectively contribute to advancing the understanding and application of dual-arm robot motion coordination, offering insights into various control strategies and optimization techniques.
Currently, there is limited research on the collaboration motion planning of dual-arm robots, and few articles provide a comprehensive framework for such coordination. The primary contributions of this paper are as follows: establishing a closed-chain kinematics model for dual-arm robots (composed of two six-degrees-of-freedom industrial robots), investigating trajectory planning for the robot, and exploring methods for planning coordinated motion tasks for the two arms. The experimental results demonstrate that the motion planning scheme proposed in this paper effectively coordinates the motion of the dual-arm robot. Specifically, this paper achieves the collaborative motion of the dual arms by integrating a feature trajectory extraction of the workpiece with closed-chain kinematics. This approach simplifies the task-planning processes for dual-arm robots and lays a theoretical foundation for further research on the collaborative control of such robots.

2. Construction of a Dual-Arm Robot Model

2.1. Kinematics Model

The standard Denavit–Hartenberg (D–H) method was utilized to establish the coordinate system for the robot’s links. Two six-degrees-of-freedom industrial robots served as the research subject. Following the defined rules, the D–H parameters for the robot are presented in Table 1, while Figure 1 illustrates the joint coordinate systems of the robot.
The homogeneous transformation matrix between the adjacent coordinate systems of the robots is as follows:
T i i 1 = cos θ i cos α i sin θ i sin α i sin θ i a i cos θ i sin θ i cos α i sin α i cos θ i a i sin θ i 0 sin α i cos α i d i 0 0 0 1

2.2. Closed-Chain Kinematics of Dual-Arm Robots

To solve the inverse kinematics problem of dual-arm robots, understanding the pose relationship of each intermediate node between the two robots is crucial. The robot holding the workpiece is designated as the master robot (number 1), while the robot holding the actuator is designated as the slave robot (number 2). The coordinate system is defined as follows:
  • The world coordinate system, denoted as W , typically shares the same origin and orientation as the master robot’s base coordinate system;
  • The base coordinate system of the master robot is defined as B 1 , while the base coordinate system of the slave robot is defined as B 2 ;
  • The master robot end coordinate system is defined as E 1 , and the slave robot end coordinate system is defined as E 2 ;
  • The coordinate system of the actuator is denoted as T G , while the working position coordinate system of the workpiece is denoted as W P . Typically, the origin of the working position coordinate system W P aligns with the origin of the rotating center coordinate system C P . Additionally, the transformation coordinate system F P of the workpiece and the transfer flange coincides with the base coordinate system B P of the workpiece, as illustrated in Figure 2.
The kinematics chain relationship between the master arm and slave arm of dual-arm robot can be analyzed. The kinematics relationship of the master arm is as follows:
T P j W = T E 1 W T F P E 1 T C P F P T P j C P
Once the working position W P is determined, the conversion relationship between the master arm’s base coordinate system and the working position can be calculated using the following formula:
T P j W = T W P W T C P W P T P j C P
The simultaneous equations yield the following expression:
T E 1 W = T W P W T C P W P T F P C P T E 1 F P
In the equations above, the attitude transformation matrix T W P W from the world coordinate system to the working position, the transformation matrix T W P W P from the working position to the rotation center, the transformation matrix T F P C P from the rotation center to the transfer, and the transformation matrix T E 1 F P from the transfer flange to the end of the master robot are provided. From these matrices, we can obtain the end rotation transformation matrix and the inverse solution for each joint of the master robot. The kinematics relationship of the slave arm is as follows:
T P j W = T B 2 W T E 2 B 2 T T G E 2 T P j T G
The simultaneous equations yield the following expression:
T E 2 B 2 = T W B 2 T W P W T C P W P T P j C P T T G P j T E 2 T G
In the provided formula, T W B 2 denotes the pose transformation matrix of the world coordinate system under the base coordinate system of the slave robot. This matrix is linked to the positional relationship between the master and slave robot and can be established through calibration. T T G P j represents the transformation of the coordinate system from a discrete point to the end of the actuator. The transformation relationship depends on the specific working attitude, and different working modes may lead to different transformation matrices. T E 2 T G signifies the installation relationship between the actuator and the end flange of the robot. This relationship is associated with the selection and installation method of the actuator and is a known quantity. From these parameters, the inverse kinematics of the robot can be calculated.

2.3. Calibration of the Base Coordinate Systems for Dual-Arm Robots

In the preceding section, the kinematics relationship of the dual-arm robots is derived. Within this context, calibration of the positional relationship between the master robot and the slave robot becomes necessary. This calibration involves establishing the relative pose relationship between the master robot and the base coordinates of the slave robot. This is achieved through the spatial three-point method [14,15].
The teaching mode is utilized to adjust the movement of the master robot within the working space with two arms, aiming to reach the three non-collinear points P 1 , P 2 , and P 3 . Subsequently, the slave robot is adjusted so that its end effector aligns with that of the master robot, touching points P 1 , P 2 , and P 3 sequentially, as depicted in Figure 3. The joint angles of both the master and slave robot at these three points are recorded, as shown in Equation (7). Here, θ P 1 M represents the six joint angles of the master robot at point P 1 , while θ P 1 S represents the six joint angles of the slave robot at point P 1 .
θ P 1 M = θ P 11 M θ P 12 M θ P 13 M θ P 14 M θ P 15 M θ P 16 M θ P 2 M = θ P 21 M θ P 22 M θ P 23 M θ P 24 M θ P 25 M θ P 26 M θ P 3 M = θ P 31 M θ P 32 M θ P 33 M θ P 34 M θ P 35 M θ P 36 M θ P 1 S = θ P 11 S θ P 12 S θ P 13 S θ P 14 S θ P 15 S θ P 16 S θ P 2 S = θ P 21 S θ P 22 S θ P 23 S θ P 24 S θ P 25 S θ P 26 S θ P 3 S = θ P 31 S θ P 32 S θ P 33 S θ P 34 S θ P 35 S θ P 36 S
Through the forward kinematics model of the master robot, the position coordinates of points P 1 , P 2 , and P 3 in the master robot’s base coordinate system B 1 can be calculated. Similarly, the position coordinates in the slave robot’s base coordinate system B 2 can also be calculated. The unit vector in the P 1 P 2 direction is designated the x axis of the calibration coordinate system c a l , while the unit vector in the direction of P 1 P 2 × P 1 P 3 is designated the z axis of the calibration coordinate system c a l . The y axis is determined using the vector cross-product z × x .
Through the aforementioned calculations, matrix T c a l B 1 can be derived. Similarly, matrix T c a l B 2 can be computed with the base coordinate system B 2 as the reference. Subsequently, the closed-chain relationship between the kinematics is as follows:
T c a l B 1 T B 2 c a l T B 1 B 2 = I
This is achieved by right-multiplying the inverse transformation matrix:
T B 2 B 1 = T c a l B 1 T c a l B 2 1
Both terms on the right side of the above equation can be solved using forward kinematics. Subsequently, the pose transformation from coordinate system B 1 to coordinate system B 2 can be obtained.

3. Construction of the Dual-Arm Robot Model

There are two challenges involved in analyzing the collaborative motion of dual-arm robots: (1) selecting the midpoint for collaborative motion between the two arms and dynamically planning the entire task trajectory; (2) effectively combining the task constraints and work-point selection. This chapter delves into a detailed analysis of these two issues and ultimately proposes a general method for dual-arm collaborative planning.

3.1. Workpiece Model

Using the welding of a workpiece in engineering as an example, a method for collaboration between dual-arm robots is proposed. Typically, in industrial settings, the dual-arm robot holds the workpiece with its master arm while gripping the actuator in the slave arm. Motion cooperation is achieved by altering the position and posture of both the workpiece and the actuator. This enables effective welding operations.
The geometric dimensions of the workpiece are measured using precision measuring instruments [16,17]. The physical size of the workpiece is illustrated in Figure 4a, while its three-dimensional representation is depicted in Figure 4b.
The workpiece and the robot’s end effector are connected via a transfer flange. When solving the inverse kinematics for the trajectory, the process involves first determining the pose of the trajectory in the rotation center coordinate system. Then, the relationship between the rotation center of the workpiece and the base coordinate system is established to solve the inverse joint solution for each discrete point. A coordinate system, as depicted in Figure 5, is established, with the discrete point coordinate system P i j located at the discrete point j of trajectory i . This includes defining the workpiece rotation center coordinate system C P , the base coordinate system B P for workpiece installation and the transfer flange, and the transfer flange coordinate system F P . The origin of C P is positioned at the center of the ball, allowing the robot to grip the workpiece and rotate it around the center of the ball to adjust its working orientation.
The homogeneous pose conversion of discrete points along the workpiece track is outlined as follows:
T P i j W = T B W T F P B T B P F P T C P B P T P i j C P
where W denotes the world coordinate system, B represents the base coordinate system of the workpiece-holding robot, and T P i j W signifies the homogeneous transformation matrix of the master robot from the world coordinate system to discrete points along the trajectory.

3.2. Feature Extraction of Workpiece Model

In the workpiece coordinate system established above, the characteristic trajectory equations are analyzed to facilitate trajectory discretization in subsequent steps. Workpiece trajectory forms are generally categorized as saddle curves, arc curves, and elliptic curves. In this paper, the focus is placed on saddle curves and arc curves. The rotation center coordinate system C P is defined within the workpiece coordinate system, and is specifically denoted as the spherical coordinate system. The origin coordinate system of the circular curve auxiliary tube cylinder is denoted as C 1 , as illustrated in Figure 6.
In Figure 6, the x axis of the tubular coordinate system C 1 is aligned with the x axis of the spherical coordinate system C P . The origin of the tubular coordinate system C 1 is determined by translating the eccentricity e along the x axis and rotating angle α counterclockwise around the x axis. Consequently, the parametric equation of the arc trajectory is obtained [18,19]. P i j C P and P i j C 1 represent the coordinate representation of discrete point j of trajectory i in the master coordinate system C P and the branch coordinate system C 1 , respectively. Through the transformation relationship between the coordinate systems and the model parameters, the parametric equation under the coordinate system C P is obtained:
P i j x C P = r cos β + e P i j y C P = r sin β r cos α P i j z C 1 sin α P i j z C P = r sin β r sin α + P i j z C 1 cos α β 0 , 2 π
The saddle curve is created at the junction of the main pipe and the branch pipe, with the main pipe having the largest diameter and the branch pipe having the smallest diameter. Figure 7 illustrates the intersection diagram, defining the rotation center coordinate system C P within the workpiece coordinate system. The origin coordinate system of the branch pipe of the saddle curve is denoted as C 1 .
The y axis of the branch coordinate system C 1 aligns with the y axis of the master coordinate system C P . This alignment is achieved by shifting eccentricity e of the master coordinate system C P along the y axis and then rotating angle α counterclockwise around the y axis. Through this transformation, the parametric equation in the principal coordinate system C P is derived:
P i j x C P = r cos β cos α + R 2 r sin β + e 2 r cos β cos α P i j y C P = r sin β + e P i j z C P = r cos β sin α + R 2 r sin β + e 2 r cos β cos α cos α sin α β 0 , 2 π

3.3. Motion-Synchronized Trajectory Discretization

The spatial trajectory represents a continuous curve, while the instructions transmitted to the motor via the controller consist of scattered-point instructions. These instructions cannot be directly applied to the continuous curve. Therefore, the continuous curve needs to be discretized into a finite number of discrete points [20,21,22]. Subsequently, the inverse solution of the joint angles corresponding to each discrete point is determined individually. This process allows for the handover of instructions to the robot for execution. Additionally, besides controlling the motion trajectory of the actuator, it is also necessary to regulate the attitude of the actuator. Typically, the z axis of the discrete point coordinate system P i j aligns with the actuator’s axis and maintains a certain height difference from the origin. The forward direction of the actuator coincides with the x direction of the discrete point coordinate system. The discretization of spatial points involves six variables: three spatial position parameters x , y , z and three spatial attitude parameters A , B , C .
The starting point coordinate of the linear trajectory is denoted as P s x s , y s , z s , the endpoint coordinate is denoted as P f x f , y f , z f , and the linear velocity at the end of the actuator is denoted as V L . The movement time is represented by t 0 , t f and t f signifies the total travel time of the actuator along the linear trajectory. Therefore, the coordinate of discrete travel point n in the middle of the linear trajectory is denoted as follows:
P n = P s + P s P f P s P f V L n T
where T denotes the interpolation time period; this is simplified here as x n = P x θ n , y n = P y θ n , z n = P z θ n . In this representation, θ n θ s , θ f and θ denote the independent variables in the parametric equation of the curve trajectory, while θ n represents a specific point in the interpolation curve.
According to the parametric equation, the arc length s L of the curve is:
s L = θ s θ f P x θ n 2 + P y θ n 2 + P z θ n 2 d θ
The differential of the arc length is:
d s L = P x θ n 2 + P y θ n 2 + P z θ n 2 d θ
The linear velocity of the actuator along the curve arc is:
V s = d s L d t = d s L d θ d θ d t = P x θ n 2 + P y θ n 2 + P z θ n 2 θ ˙
The change rate of the parameter θ with respect to time is:
θ ˙ = V s P x θ n 2 + P y θ n 2 + P z θ n 2
When the discrete time period is T , the coordinates of the n + 1 discrete point on the curve trajectory are expressed as x n + 1 = P x θ n + θ ˙ T , y n + 1 = P y θ n + θ ˙ T , z n + 1 = P z θ n + θ ˙ T , where θ n θ s , θ f .
The saddle curve and arc curve are discretized, and simulations are conducted in MATLAB R2019b to validate the accuracy of the formulas and coordinate systems. The simulation parameters for the saddle curve and ball tube penetration are detailed in Table 2. In the C P coordinate system, the position and orientation of the discrete curves are depicted in Figure 8a,b, respectively. In these figures, the x axis of each discrete point aligns with the tangent direction of the curve, the z axis direction points outward, and the y axis direction points inward.

3.4. Collaborative Motion Constraint Analysis

By analyzing the cooperative motion of a dual-arm robot, the task constraints can be divided into two parts: the first part involves the pose constraint between the trajectory’s discrete points and the actuator, while the second part involves the position and pose constraint of the discrete points in space, as illustrated in Figure 9.
Constraint 1 in Figure 9 represents the pose constraint between the actuator T G and the discrete point P j along the workpiece’s trajectory, expressed by matrix T T G P j . This constraint varies depending on the specific task and is determined based on real-world conditions. Constraint 2, on the other hand, signifies the pose constraint between the trajectory discrete point P j and the world coordinate system W , denoted by matrix T P j W . This constraint is associated with the planned working position of the workpiece, ensuring that the working position falls within the common working space of both arms.
Given the discrete attitude transformation matrix T P j C P in the rotating coordinate system, the final attitude transformation matrix of the master robot at each moment of rotation is as follows:
T E 1 W = T W P W T C P W P T F P C P T E 1 F P
The actuator pose transformation matrix of the slave robot at each moment is:
T E 2 W = T W P W T C P W P T P j C P T T G P j T E 2 T G

3.5. Procedure for Cooperative Planning for Dual-Arm Motions

The general methods of collaborative planning for dual-arm robots can be summarized as follows:
  • Establish a 3D model of the workpiece based on the requirements of the task and determine the conversion relationship between the connecting rod coordinate system and the workpiece coordinate system;
  • Derive the characteristic equation of the task curve in the base coordinate system based on the workpiece model;
  • Discretize the obtained curve according to the characteristic equation from step 2 and Formulas (13)–(17);
  • Analyze the collaborative motion of dual-arm robots, and derive the kinematics constraint relationship of the robot during motion using Formulas (18) and (19).
  • The above processes are summarized in Figure 10.

4. Simulation Verification and Analysis

MATLAB R2019b Simscape was utilized to perform simulation for the motion collaboration planning method of dual-arm robots, with the motion planning program scripted following the procedure outlined in Figure 10. The logic block diagram is depicted in Figure 11. The workpiece is mounted at the end of the master arm, with the installed actuator extending from the end of the slave’s arm.
(1)
Simulation Scenario 1 (central rotation)
In working scenario 1, the master robot picks up the workpiece and rotates around the center of the workpiece, while the actuator moves vertically along the working track. The four key positions of the dual-arm robot during the movement process are illustrated in Figure 12. The robot begins from the zero position, first reaching the contact point of the working task, then moving counterclockwise along the track by half a track, and finally returning to the contact point clockwise by half a track.
The trajectory simulation values of the dual-arm robot’s joints were input into the robot to observe if each joint’s trajectory curve was smooth without abrupt changes, if the trajectory stayed within the joint limits, and if the joint angles were correct. The incremental change curve of each joint angle of the master robot, from the initial moment to the contact point moment, is depicted in Figure 13 and the incremental change curve of each joint angle of the slave robot is depicted in Figure 14. The movement duration was 16 s. Using the base coordinate system of the master robot as a reference, the rotation center coordinate of the workpiece is x , y , z = 1.5 , 0.2 , 0.881 . The simulation parameters of the robot are detailed in Table 3.
(2)
Simulation Scenario 2 (Rigid Body Translation)
In scenario 2, the master robot executes a circular trajectory in the spatial plane, while the slave robot coordinates its circular trajectory based on the workpiece dimensions while tracking the master robot’s circular movement. Key positions during the dual-arm cooperative circular motion are illustrated in Figure 15, and the circular trajectory of the actuator on the workpiece surface is depicted in Figure 16. Stages (a) to (b) in Figure 15 respectively represent the movement from the robot’s zero point to the docking point, stages (b) to (c) indicate that the motion trajectory has traversed by 1/4 of a circle, and stages (c) to (d) indicate that the motion trajectory has traversed 3/4 of a circle. Figure 16 displays the trajectory of the actuator end on the workpiece.
The simulation parameters for the dual-arm motion in working scenario 2 are presented in Table 4, with the joint angle curves depicted in Figure 17 and Figure 18. Figure 17 illustrates the angle change curve of the master robot’s joints, while Figure 18 showcases the angle change curve of the slave robot’s joints. To account for the impact force of the robot’s joints at the turning point, a trapezoidal velocity planning method is employed for the overall trajectory.
From the collaboration motion simulation of the two operating scenarios, it is evident that the actuator can track the working trajectory during motion, and the joint angle change curves of the dual-arm robot remain within the robot’s joint limit range.

5. Experimental Verification and Analysis

After completing the simulation, it is essential to construct a dual-arm robot system for experimental validation. The cooperation of the dual-arm robot will be observed during the experiment. Subsequently, simulation data will be imported into the experimental system for cooperative movement experiments following the development of upper computer and controller programs.

5.1. Experimental Platform Setup

The robots utilized in this experimental setup were two standalone industrial robots from a particular company. By employing an industrial switch and Ethernet communication, these two independent robots were interconnected to create a dual-arm robot system. The experimental equipment is detailed in Table 5.
During the dual-arm cooperative movement, the master robot installs the workpiece, while the slave robot installs the actuator. The initial position of the dual-arm robot is its zero position, as depicted in Figure 19. Figure 19a illustrates the installation of the workpiece, while Figure 19b illustrates the installation of the actuator.

5.2. Calibration of the Base Coordinate System for Dual-Arm Robots

Prior to conducting the experiment, it is essential to calibrate the base coordinate system of the dual-arm robot. The calibration site and the tools used for robot installation calibration are illustrated in Figure 20.
The master robot is denoted as M , while the slave robot is labeled as S . The joint-angle sequence of the master robot at the initial spatial point P 1 is represented as M 1 , and that of the slave robot is denoted as S 1 . Similarly, in space, the joint-angle sequence of the master robot at the second point P 2 is indicated as M 2 , and the secondary robot’s joint-angle sequence is denoted as S 2 . Likewise, in space, the joint-angle sequence of the master robot at the third point P 3 is labeled as M 3 , and the slave robot’s joint-angle sequence is denoted as S 3 . The experiments involving the spatial docking points are illustrated in Figure 21, with the recorded data from the experiments presented in Table 6.
Utilizing forward kinematics, the end pose of the M 1 group sequence is computed. The position of point P 1 in the master robot’s base coordinate system is derived by extracting the first three rows of the final column. Subsequently, the positions of points P 2 and P 3 are obtained by sequential substitution:
P 1 M = 1.2367 , 0.0200 , 1.4260 P 2 M = 1.2527 , 0.4883 , 1.2630 P 3 M = 1.2466 , 1.1244 , 1.2638
Taking the unit vector in the direction of the P 1 P 2 vector as the x axis of the intermediate calibration coordinate system, denoted as c a l , and the unit vector in the direction of P 1 P 2 × P 1 P 3 as the z axis, the y axis is obtained through the cross-product z × x . This process yields a 3 × 3 attitude matrix. By selecting the P 1 point as the reference position, a terminal attitude position transformation matrix can be obtained based on the master robot’s base coordinate system. The translation is as follows:
T c a l B 1 = 0.0301 0.1238 0.9918 1.2527 0.9518 0.3066 0.0094 0.4883 0.3053 0.9438 0.1271 1.2630 0 0 0 1
Similarly, using S 1 , S 2 , S 3 , and the previous method, a set of position coordinates can be obtained with the robot as the reference frame:
P 1 S = 1.6304 , 0.0542 , 1.4159 P 2 S = 1.5355 , 0.4484 , 1.2480 P 3 S = 1.4557 , 1.0791 , 1.2716
The pose transformation matrix in the robot coordinate system is as follows:
T c a l B 2 = 0.1764 0.1132 0.9778 1.5355 0.9336 0.3339 0.1298 0.4484 0.3118 0.9358 0.1646 1.2480 0 0 0 1
The closed-loop relationship between the kinematics relationship is as follows:
T c a l B 1 T B 2 c a l T B 1 B 2 = I
By right-multiplying the inverse transformation matrix, the transformation matrix from the robot’s base coordinate system to the master robot’s base coordinate system can be obtained, as follows:
T B 2 B 1 = T c a l B 1 T c a l B 2 1 = 0.9891 0.1420 0.0380 2.7878 0.1424 0.9898 0.0083 0.2734 0.0364 0.0136 0.9992 0.0461 0 0 0 1

5.3. The Coordinated Motion of Dual-Arm Robots

After completing the calibration of the base coordinate system, motion coordination experiments are conducted, which are divided into scenario 1 and scenario 2.
(1)
Coordinated motion scenario one for dual-arm robot (central rotation).
Import the simulated trajectory into the master–slave robot controller program, as illustrated in Figure 22, for the experimental procedure.
The corresponding joint curves are shown in Figure 23. From the experimental curves, it can be observed that the trajectory executed by the dual-arm robot during the experiment is identical to the simulated trajectory.
To assess the smoothness of the robot’s movement, Figure 24 displays the change curves of the robot’s joint angular velocity. Figure 24a depicts the joint angular velocity curve of the master robot, while Figure 24b illustrates the joint angular velocity curve of the slave robot. During the timeframe of 0 s to 5 s, a trapezoidal velocity curve is executed at the end. The figure shows that the joint angular velocity remains zero for 5 s. Between 5 s and 16 s, the joint speed of the master robot’s sixth joint undergoes the most significant change, followed by the sixth joint of the slave robot, while the other joints experience minimal changes.
(2)
Dual-arm cooperative scenario 2 (Rigid Body Translation)
The motion trajectories can be imported into the control program for conducting cooperative experiments, as depicted in Figure 25.
The joint-angle change curve of the dual-arm cooperative circular trajectory is depicted in Figure 26. In Figure 26a, the joint-angle change curve of the master robot is illustrated, while Figure 26b displays the joint-angle change curve of the slave robot. Both curves closely align with the simulation curves presented in Section 3, affirming their ability to fulfill collaboration motion tasks.
The joint-angular velocity curves of the dual-arm cooperative circular trajectory are depicted in Figure 27. In Figure 27a, the curves illustrate the joint velocity changes in the master robot, while Figure 27b showcases the joint velocity changes in the slave robot. Both sets of curves demonstrate that the master and slave robots undergo a uniform acceleration and deceleration from 0 at 0 s to 5 s and from 5 s to 15 s, mitigating the impact of the trajectory on the joints at the turning point.
During the experiment, the midpoint of the cooperative motion is measured under working scenarios 1 and 2, focusing primarily on the height error between the track points of the master robot and the actuator of the slave robot. The measurement data are presented in Table 7.
The errors listed in Table 7 are plotted as curves, as depicted in Figure 28.
The effectiveness of the proposed method is evident from the results of experiments involving two types of motion coordination: rigid-body rotation and rigid-body translation. An analysis of the trajectory curves for each joint reveals that the joints remain within the robot’s limits, with reasonable angular acceleration observed. Deceleration and acceleration processes occur at turning points, effectively mitigating the joint impact forces. Throughout the experiment, the distance between the actuator and discrete points on the workpiece was measured, yielding a maximum distance error of 2.6 mm. This error is attributed to inaccuracies in calibrating the base coordinate system of the dual-arm robot and the end calibration results of the actuator. While the calibration method employed for the robot’s base coordinate system is convenient and straightforward, its accuracy is insufficient, contributing to errors.

6. Discussion

In this paper, a cooperative motion trajectory planning method for a dual-arm robot is investigated. The main conclusions are as follows:
(1)
A mathematical model of a two-arm robot is established, and the closed-chain kinematics relationship of the dual-arm robot during a motion coordination process is derived. This facilitates the interpolation of the working trajectory, enhancing operational efficiency;
(2)
A three-point spatial method is employed to achieve self-calibration of the relative pose relationship between the master robot’s base coordinates and the slave robot’s base coordinates, streamlining the calibration process for dual-arm robots;
(3)
By extracting the feature trajectory of the workpiece model and integrating it with closed-chain kinematics, the trajectory for dual-arm coordinated motion is planned, simplifying the task planning method of the dual-arm robot. The effectiveness of the method is verified through simulation and experimentation.
Through simulation and experimentation, the motion coordination method for dual-arm robots, a new approach to enhance the application of dual-arm robots, is proposed.

Author Contributions

Conceptualization, K.M. and K.Z.; methodology, Z.Y. and K.Z.; software, K.M. and K.Z.; writing—original draft, K.M. and K.Z.; writing—review and editing, K.Z. and Y.Q.; supervision, K.Z. and Y.Q. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Due to privacy or ethical constraints, data can be obtained by contacting the author for access.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Vasilev, M.; MacLeod, C.N.; Loukas, C.; Javadi, Y.; Vithanage, R.K.; Lines, D.; Mohseni, E.; Pierce, S.G.; Gachagan, A. Sensor-enabled multi-robot system for automated welding and in-process ultrasonic NDE. Sensors 2021, 21, 5077. [Google Scholar] [CrossRef]
  2. Canfield, S.L.; Owens, J.S.; Zuccaro, S.G. Zero moment control for lead-through teach programming and process monitoring of a collaborative welding robot. J. Mech. Robot. 2021, 13, 031016. [Google Scholar] [CrossRef]
  3. He, S.; Li, D.; Xi, Y. Design of motion planning system for dual-arm robot with gantry based on temporal logic specifications and predictive control. In Proceedings of the 14th International Conference on Control and Automation (ICCA), Anchorage, AK, USA, 12–15 June 2018. [Google Scholar]
  4. Liu, X.; Qiu, C.; Zeng, Q.; Li, A. Kinematics analysis and trajectory planning of collaborative welding robot with multiple manipulators. Procedia CIRP 2019, 81, 1034–1039. [Google Scholar] [CrossRef]
  5. Buhl, J.F.; Grønhøj, R.; Jørgensen, J.K.; Mateus, G.; Pinto, D.; Sørensen, J.K.; Bøgh, S.; Chrysostomou, D. A dual-arm collaborative robot system for the smart factories of the future. Procedia Manuf. 2019, 38, 333–340. [Google Scholar] [CrossRef]
  6. Cruz-Ortiz, D.; Chairez, I.; Poznyak, A. Adaptive sliding-mode trajectory tracking control for state constraint master–slave manipulator systems. ISA Trans. 2022, 127, 273–282. [Google Scholar] [CrossRef]
  7. Sintov, A.; Borum, A.; Bretl, T. Motion planning of fully actuated closed kinematic chains with revolute joints: A comparative analysis. IEEE Robot. Autom. Lett. 2018, 3, 2886–2893. [Google Scholar] [CrossRef]
  8. Riboli, M.; Jaccard, M.; Silvestri, M.; Aimi, A.; Malara, C. Collision-free and smooth motion planning of dual-arm cartesian robot based on B-spline representation. Robot. Auton. Syst. 2023, 170, 104534. [Google Scholar] [CrossRef]
  9. Xiong, J.; Fu, Z.; Li, M.; Gao, Z.; Zhang, X.; Chen, X. Trajectory-smooth optimization and simulation of dual-robot collaborative welding. In Proceedings of the 14th International Conference on Intelligent Robotics and Applications (ICIRA), Yantai, China, 22–25 October 2021. [Google Scholar]
  10. Meng, S.; Dai, X.; Gan, Y. Path constraint relation and trajectory teaching method for multi-robot cooperation system. Robot 2012, 34, 546–552. [Google Scholar] [CrossRef]
  11. Hou, Y.; Wang, T.; Yue, J.; Jia, Z. Path planning for dual-robot coordinate welding based on multi-objective genetic algorithm. China Mech. Eng. 2018, 29, 1984–1989. [Google Scholar]
  12. Tang, Q.; Ma, L.; Zhao, D.; Sun, Y.; Lei, J.; Wang, Q. A dual-robot cooperative arc welding path planning algorithm based on multi-objective cross-entropy optimization. Robot. Comput. Integr. Manuf. 2024, 89, 102760. [Google Scholar] [CrossRef]
  13. Lei, W.; Xiangming, X. Research on double robots master-slave coordinated control system. Ind. Control. Comput. 2017, 30, 55–57. [Google Scholar]
  14. Mao, J.; Xu, R.; Ma, X.; Hu, S.; Bao, X. Fast calibration method for base coordinates of the dual-robot based on Three-Point measurement calibration method. Appl. Sci. 2023, 13, 8799. [Google Scholar] [CrossRef]
  15. Stepanova, K.; Rozlivek, J.; Puciow, F.; Krsek, P.; Pajdla, T.; Hoffmann, M. Automatic self-contained calibration of an industrial dual-arm robot with cameras using self-contact, planar constraints, and self-observation. Robot. Comput. Integr. Manuf. 2022, 73, 102250. [Google Scholar] [CrossRef]
  16. Nguyen, C.; Hua, B.; Pham, T. Development of a vision system integrated with industrial robots for online weld seam tracking. J. Manuf. Process. 2024, 119, 414–424. [Google Scholar] [CrossRef]
  17. Tannous, M.; Miraglia, M.; Inglese, F.; Giorgini, L.; Ricciardi, F.; Pelliccia, R.; Milazzo, M.; Stefanini, C. Haptic-based touch detection for collaborative robots in welding applications. Robot. Comput. Integr. Manuf. 2020, 64, 101952. [Google Scholar] [CrossRef]
  18. Li, X.; Huang, H.; Hong, B.; Li, R.; Ma, X.; Wang, Y. Algorithm and numerical simulation of intersecting line weld seam extraction based on pipeline insertion. Trans. China Weld. Inst. 2022, 43, 98–103+119–120. [Google Scholar]
  19. Jianhong, H.; Xiaohui, G.; Yongsheng, W.; Wenqiang, L.; Jingwen, W.; Yin, P. Development of intersecting line welding equipment based on laser vision. Mod. Manuf. Eng. 2022, 3, 92–97. [Google Scholar]
  20. Zhang, Y.; Lv, X.; Xu, L.; Jing, H.; Han, Y. A segmentation planning method based on the change rate of cross-sectional area of single v-groove for robotic multi-pass welding in intersecting pipe-pipe joint. Int. J. Adv. Manuf. Technol. 2019, 101, 23–38. [Google Scholar] [CrossRef]
  21. Sarivan, I.M.; Madsen, O.; Wæhrens, B.V. Automatic welding-robot programming based on product-process-resource models. Int. J. Adv. Manuf. Technol. 2024, 132, 1931–1950. [Google Scholar] [CrossRef]
  22. Tavares, P.; Costa, C.M.; Rocha, L.; Malaca, P.; Costa, P.; Moreira, A.P.; Sousa, A.; Veiga, G. Collaborative welding system using BIM for robotic reprogramming and spatial augmented reality. Autom. Constr. 2019, 106, 102825. [Google Scholar] [CrossRef]
Figure 1. DH coordinate systems of dual-arm robot.
Figure 1. DH coordinate systems of dual-arm robot.
Machines 12 00387 g001
Figure 2. The coordinate systems’ relationship of dual-arm robots.
Figure 2. The coordinate systems’ relationship of dual-arm robots.
Machines 12 00387 g002
Figure 3. Calibration of the base coordinate system for dual-arm robots.
Figure 3. Calibration of the base coordinate system for dual-arm robots.
Machines 12 00387 g003
Figure 4. The workpiece and its three-dimensional model: (a) workpiece; (b) three-dimensional model of workpiece.
Figure 4. The workpiece and its three-dimensional model: (a) workpiece; (b) three-dimensional model of workpiece.
Machines 12 00387 g004
Figure 5. Workpiece coordinate systems.
Figure 5. Workpiece coordinate systems.
Machines 12 00387 g005
Figure 6. Schematic diagram of arc trajectory.
Figure 6. Schematic diagram of arc trajectory.
Machines 12 00387 g006
Figure 7. Schematic diagram of intersecting pipe trajectory.
Figure 7. Schematic diagram of intersecting pipe trajectory.
Machines 12 00387 g007
Figure 8. Discretization of curve trajectory position and attitude: (a) saddle curve pose interpolation; (b) arc curve pose interpolation.
Figure 8. Discretization of curve trajectory position and attitude: (a) saddle curve pose interpolation; (b) arc curve pose interpolation.
Machines 12 00387 g008
Figure 9. Illustration of constraints.
Figure 9. Illustration of constraints.
Machines 12 00387 g009
Figure 10. Flowchart of the dual-arm motion cooperative planning method.
Figure 10. Flowchart of the dual-arm motion cooperative planning method.
Machines 12 00387 g010
Figure 11. Logic block diagram of the dual-arm robot motion cooperative program.
Figure 11. Logic block diagram of the dual-arm robot motion cooperative program.
Machines 12 00387 g011
Figure 12. Dual-arm motion collaboration process (Scenario 1): (a) zero pose; (b) docking point; (c) move forward by 1/2 track; (d) move backward by 1/2 track.
Figure 12. Dual-arm motion collaboration process (Scenario 1): (a) zero pose; (b) docking point; (c) move forward by 1/2 track; (d) move backward by 1/2 track.
Machines 12 00387 g012
Figure 13. Master robot joint angle change curve.
Figure 13. Master robot joint angle change curve.
Machines 12 00387 g013
Figure 14. Slave robot joint angle change curve.
Figure 14. Slave robot joint angle change curve.
Machines 12 00387 g014
Figure 15. Dual-arm coordinated motion process (Scenario 2): (a) zero pose; (b) docking point; (c) movement to 1/4 circle trajectory; (d) movement to 3/4 circle trajectory.
Figure 15. Dual-arm coordinated motion process (Scenario 2): (a) zero pose; (b) docking point; (c) movement to 1/4 circle trajectory; (d) movement to 3/4 circle trajectory.
Machines 12 00387 g015
Figure 16. Motion process of the actuator and workpiece in a circular trajectory.
Figure 16. Motion process of the actuator and workpiece in a circular trajectory.
Machines 12 00387 g016
Figure 17. Joint angle change curves of the master robot.
Figure 17. Joint angle change curves of the master robot.
Machines 12 00387 g017
Figure 18. Joint angle change curves of the slave robot.
Figure 18. Joint angle change curves of the slave robot.
Machines 12 00387 g018
Figure 19. Schematic diagram of workpiece and actuator installation: (a) workpiece; (b) actuator.
Figure 19. Schematic diagram of workpiece and actuator installation: (a) workpiece; (b) actuator.
Machines 12 00387 g019
Figure 20. Dual-arm robot and calibration tools.
Figure 20. Dual-arm robot and calibration tools.
Machines 12 00387 g020
Figure 21. Point-to-point calibration experiment for dual-arm robots: (a) spatial first encounter; (b) spatial second encounter; (c) spatial third encounter; (d) close-up view of first encounter; (e) close-up view of second encounter; (f) close-up view of third encounter.
Figure 21. Point-to-point calibration experiment for dual-arm robots: (a) spatial first encounter; (b) spatial second encounter; (c) spatial third encounter; (d) close-up view of first encounter; (e) close-up view of second encounter; (f) close-up view of third encounter.
Machines 12 00387 g021
Figure 22. The key nodes of dual-arm motion coordination trajectory: (a) zero pose; (b) docking point; (c) forward 1/2 trajectory; (d) directional 1/2 trajectory.
Figure 22. The key nodes of dual-arm motion coordination trajectory: (a) zero pose; (b) docking point; (c) forward 1/2 trajectory; (d) directional 1/2 trajectory.
Machines 12 00387 g022
Figure 23. The joint-angle change curves of the dual-arm robot experiment (Scenario 1): (a) the joint-angle change curves of the master robot; (b) the joint-angle change curves of the slave robot.
Figure 23. The joint-angle change curves of the dual-arm robot experiment (Scenario 1): (a) the joint-angle change curves of the master robot; (b) the joint-angle change curves of the slave robot.
Machines 12 00387 g023
Figure 24. Velocity change curves of a dual-arm robot (scenario 1): (a) joint angular velocity curves of the master robot; (b) joint angular velocity curves of the slave robot.
Figure 24. Velocity change curves of a dual-arm robot (scenario 1): (a) joint angular velocity curves of the master robot; (b) joint angular velocity curves of the slave robot.
Machines 12 00387 g024
Figure 25. Key nodes of dual-arm cooperative circular trajectory: (a) zero pose; (b) docking point; (c) moving to 1/4 circular trajectory; (d) moving to 3/4 circular trajectory.
Figure 25. Key nodes of dual-arm cooperative circular trajectory: (a) zero pose; (b) docking point; (c) moving to 1/4 circular trajectory; (d) moving to 3/4 circular trajectory.
Machines 12 00387 g025
Figure 26. The joint-angle change curves of the dual-arm robot experiment (Scenario 2): (a) the joint-angle change curves of the master robot; (b) the joint-angle change curves of the slave robot.
Figure 26. The joint-angle change curves of the dual-arm robot experiment (Scenario 2): (a) the joint-angle change curves of the master robot; (b) the joint-angle change curves of the slave robot.
Machines 12 00387 g026
Figure 27. Velocity change curves of a dual-arm robot (Scenario 2): (a) joint-angular-velocity of the master robot; (b) joint-angular-velocity of the slave robot.
Figure 27. Velocity change curves of a dual-arm robot (Scenario 2): (a) joint-angular-velocity of the master robot; (b) joint-angular-velocity of the slave robot.
Machines 12 00387 g027
Figure 28. Motion coordination intermediate point errors.
Figure 28. Motion coordination intermediate point errors.
Machines 12 00387 g028
Table 1. D–H parameters of the six-degrees-of-freedom industrial robot.
Table 1. D–H parameters of the six-degrees-of-freedom industrial robot.
Link Number i a i /mm α i /rad d i /mm θ i /rad
1350 π / 2 684 θ 1 π / 2
2120000 θ 2 π / 2
30 π / 2 0 θ 3 0
40 π / 2 1050 θ 4 0
50 π / 2 0 θ 5 π / 2
6000 θ 6 π / 2
Table 2. Parameters for the discrete simulation of curve trajectory poses.
Table 2. Parameters for the discrete simulation of curve trajectory poses.
Name Main Pipe Radius R Branch Pipe Radius r Rotation Angle α Eccentricity e
Saddle curve50 mm45 mm π / 2 rad0 mm
Arc curve50 mm20 mm0 rad0 mm
Table 3. Parameters for central rotational motion.
Table 3. Parameters for central rotational motion.
Simulation Parameter NameSimulation Parameter/(mm, deg)
Initial coordinates of the master robot x , y , z , A , B , C = 0 , 1.4 , 1.181 , 0 , 0 , 0
Rotation center coordinates of the master robot x , y , z , A , B , C = 1.5 , 0.2 , 1.081 , 0 , 0 , 0
Initial coordinates of the slave robot x , y , z , A , B , C = 0 , 1.4 , 1.181 , 0 , 0 , 0
Time from start point to rotation center0~5 s
Clockwise 1/2 trajectory time5~13 s
Counterclockwise 1/2 trajectory time13~16 s
Table 4. Rigid body translation circular motion parameters.
Table 4. Rigid body translation circular motion parameters.
Simulation Parameter NameSimulation Parameter/(mm, deg)
Initial coordinates of the master robot x , y , z , A , B , C = 0 , 1.4 , 1.181 , 0 , 0 , 0
Docking point coordinate of the master robot x , y , z , A , B , C = 1.5 , 0.5 , 0.081 , 0 , 0 , 0
Initial coordinates of the slave robot x , y , z , A , B , C = 0 , 1.375 , 0.79 , 0 , 0 , 0
Time from start point to docking point0~5 s
Time from docking point to 1/4 circle5~13 s
Time for 3/4 circle to return to docking point13~16 s
Table 5. Experimental hardware equipment.
Table 5. Experimental hardware equipment.
Experimental EquipmentModelQuantity
Host computerMECHREVO Code011
Industrial switchICP DAS NS-2051
ControllerNI-cRIO 90302
Industrial robot150 kg Industrial Robot2
ActuatorExperimental Equipment1
WorkpieceExperimental Equipment1
Table 6. Joint angle data calibration for dual-arm robot.
Table 6. Joint angle data calibration for dual-arm robot.
Number θ 1 /rad θ 2 /rad θ 3 /rad θ 4 /rad θ 5 /rad θ 6 /rad
M 1 3.3501−1.93320.3150−1.19920.8205−1.5709
M 2 2.9103−1.76920.5913−2.46991.0582−1.5709
M 3 2.4076−1.3606−0.30610.00001.5709−1.5709
S 1 0.0525−1.64300.1389−1.39360.4213−0.4161
S 2 0.4697−1.51820.0881−1.18451.1627−0.4936
S 3 0.6904−1.26290.1824−2.86331.5296−1.1215
Table 7. The measurement values of the intermediate point errors in the experiment.
Table 7. The measurement values of the intermediate point errors in the experiment.
Measurement Error for Scenario 1Measurement Error for Scenario 2
Docking Point1.5 mm1.8 mm
Intermediate Point 12.4 mm2.1 mm
Intermediate Point 21.7 mm2.6 mm
End Point1.4 mm1.7 mm
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Qin, Y.; Zhang, K.; Meng, K.; Yin, Z. Research on Collaboration Motion Planning Method for a Dual-Arm Robot Based on Closed-Chain Kinematics. Machines 2024, 12, 387. https://doi.org/10.3390/machines12060387

AMA Style

Qin Y, Zhang K, Meng K, Yin Z. Research on Collaboration Motion Planning Method for a Dual-Arm Robot Based on Closed-Chain Kinematics. Machines. 2024; 12(6):387. https://doi.org/10.3390/machines12060387

Chicago/Turabian Style

Qin, Yuantian, Kai Zhang, Kuiquan Meng, and Zhehang Yin. 2024. "Research on Collaboration Motion Planning Method for a Dual-Arm Robot Based on Closed-Chain Kinematics" Machines 12, no. 6: 387. https://doi.org/10.3390/machines12060387

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop