Next Article in Journal
Optimizing Acute Coronary Syndrome Patient Treatment: Leveraging Gated Transformer Models for Precise Risk Prediction and Management
Previous Article in Journal
A Cross-Stage Partial Network and a Cross-Attention-Based Transformer for an Electrocardiogram-Based Cardiovascular Disease Decision System
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Coordinating Obstacle Avoidance of a Redundant Dual-Arm Nursing-Care Robot

1
Academy for Engineering and Technology, Fudan University, Shanghai 200433, China
2
College of Electronic Information and Automation, Tianjin University of Science and Technology, Tianjin 300222, China
*
Author to whom correspondence should be addressed.
Bioengineering 2024, 11(6), 550; https://doi.org/10.3390/bioengineering11060550
Submission received: 15 April 2024 / Revised: 17 May 2024 / Accepted: 27 May 2024 / Published: 29 May 2024
(This article belongs to the Section Biomedical Engineering and Biomaterials)

Abstract

:
Collision safety is an essential issue for dual-arm nursing-care robots. However, for coordinating operations, there is no suitable method to synchronously avoid collisions between two arms (self-collision) and collisions between an arm and the environment (environment-collision). Therefore, based on the self-motion characteristics of the dual-arm robot’s redundant arms, an improved motion controlling algorithm is proposed. This study introduces several key improvements to existing methods. Firstly, the volume of the robotic arms was modeled using a capsule-enveloping method to more accurately reflect their actual structure. Secondly, the gradient projection method was applied in the kinematic analysis to calculate the shortest distances between the left arm, right arm, and the environment, ensuring effective avoidance of the self-collision and environment-collision. Additionally, distance thresholds were introduced to evaluate collision risks, and a velocity weight was used to control the smooth coordinating arm motion. After that, experiments of coordinating obstacle avoidance showed that when the redundant dual-arm robot is holding an object, the coordinating operation was completed while avoiding self-collision and environment-collision. The collision-avoidance method could provide potential benefits for various scenarios, such as medical robots and rehabilitating robots.

1. Introduction

Nursing-care robots are efficient assistants for daily life actions such as home service and social guarantee [1,2]. Initially, single-arm robots were widely adopted for nursing-care robots due to their simple structure and low cost [3]. However, their limited operational flexibility and spatial efficiency make them underperform in complex or space-constrained environments [4]. To enhance the adaptability and flexibility of robots, researchers have introduced designs with redundant degrees of freedom (DoFs) [5,6], significantly enhancing the spatial reachability of single-arm robots and enabling them to be more flexible to complex environment. Despite these improvements, single-arm structures still exhibit performance bottlenecks when executing tasks that require dual-arm coordination, such as litter cleaning [7]. Consequently, further studies presented redundant dual-arm robots [8]. This design expanded the operational space [9], enhanced the capability to perform complex tasks through coordinated dual-arm operations [10], and improved the stability and efficiency of task execution [11]. Nevertheless, redundant dual-arm robots still face risks of self-collision and collisions with environmental obstacles (environment-collision).
Global path planning, as proposed by Kavraki et al. [12], is a collision-avoidance technology, which precomputes a path from the starting point to the endpoint to circumvent obstacles. This method is suitable for static environments where the positions of obstacles are completely known. In contrast, local path planning is more flexible, as shown by Hatib et al.’s research [13], which adapts the obstacle-avoidance path to accommodate dynamically changing environmental obstacles, and it is suitable for complex or frequently changing environments. Shen et al. [14] and Li et al. [15] used the local path planning method for redundant dual-arm robots to avoid environment-collision but without considering self-collision when performing coordinating operations. As an attempt, Wang et al. [16] and Wu et al. [17] considered the optimization of the robotic arm’s motion trajectories to avoid self-collision but overlooked the volumetric aspects of the arms. This oversight can lead to collisions between different parts of the robotic arm during actual operations. Additionally, according to Shi et al. [18] and Li et al. [19], recent obstacle avoidance strategies often cause the robotic arm to be unsmooth due to uneven joint trajectories in coordinated operations. Hence, for coordinated operations, there is still no suitable method to smoothly control motion while avoiding self-collision and environment-collision with the actual robot volume.
To address this issue, this study proposes an obstacle-avoidance algorithm for coordinated operations of redundant dual-arm robots based on their inherent kinematic properties. The main contribution of this work is as follows:
  • A capsule-based algorithm was used to model the volume of the robotic arms, and a gradient projecting method was utilized to calculate the shortest distances (among the left arm, the right arm, and the environment), which achieved the actual body’s self-collision avoidance.
  • By introducing a distance threshold to assess the risk of collisions between obstacles and the robotic arms, the robotic arm movement speed was smoothly adjusted.
The experiments showed that this study realized smooth robot self-collision and environment-collision avoidance, which has potential benefits for various scenarios such as medical robots and rehabilitating robots.

2. Materials and Methods

2.1. Kinematics of Coordinating Operation of Dual-Arm Robot

The schematic diagram of the redundant dual-arm robot used in this study is shown in Figure 1. The dual-arm robot had a symmetric structure with seven rotating joints. Compared with the traditional 6 DoF robotic arm, the 7 DoF arm shows self-motion characteristics. When the two redundant arms coordinate to carry objects, a closed kinematic chain is formed between the left arm and the object, as well as between the object and the right arm, to constrain the movement efficiently [11,20].
The frames of the redundant dual-arm robot are shown in Figure 2. OB-XBYBZB is the base frame, and OLn-XLnYLnZLn and ORn-XRnYRnZRn are the frames of the end-effectors of the left and right arms, respectively. OW-XWYWZW is the frame fixed at the geometric center of the object. l L i and l R i represent the length of the i-th link of the left arm and that of the right arm, respectively. q L i and q R i (i = 1, 2 ··· 7) are the joint angles of the i-th link of the left arm and those of the right arm, respectively. The symbol “+” denotes the positive direction of the rotation of a joint.
When an object is being transported, there is no relative motion between the end-effectors of the arms and the object. Therefore, the kinematic constraint equation in the coordinating operation of a redundant dual-arm robot can be derived as follows [14,20]:
x ˙ = J ( q L , q R ) q ˙
where x ˙ is the velocity vector of the arm end-effector, J ( q L , q R ) is the Jacobian matrix of the coordinating operation of the dual-arm robot [21], and q ˙ = [ q ˙ L q ˙ R ] T is the joint angular velocity vector.

2.2. Shortest Distance Calculation Based on Gradient Projection Method

When the redundant dual-arm robot operates in coordination, the two arms are obstacles to each other. To avoid self-collision, it is necessary to perform calculations in real time. The shortest distance from each link of the right arm to the left arm is calculated when the right arm is regarded as the obstacle to the left arm. Furthermore, the shortest distance from each link of the left arm to the right arm is calculated when the left arm is regarded as the obstacle to the right arm. At the same time, to avoid self-collision and environment-collision, the shortest distance between the left arm, the right arm, and the environment should be calculated. A detailed derivation and a comprehensive explanation of the gradient projection method used for these distance calculations are specifically provided in Section 2.2.1, Section 2.2.2 and Section 2.2.3.

2.2.1. Simplified Model of Redundant Dual-Arm Robot

Most existing robotic arm obstacle-avoidance algorithms approximate the actual arm as a segmented line and then use the gradient projection method to calculate the shortest distance between the left arm, the right arm, and the environment. However, the segmented line method mainly considers the arm length and ignores its volume element, which is often the main reason for the failure of obstacle avoidance in an actual operation. Therefore, based on the overall arm size, the actual shortest distance between the left arm, the right arm, and the environment is obtained, and the obstacle-avoidance algorithm for the redundant dual-arm robot is developed.
The common methods for simplifying the robotic arm mainly include the sphere-enveloping simplification, cuboid-enveloping simplification, capsule-enveloping simplification, and ellipsoid-enveloping simplification [22,23]. Among these, the capsule-enveloping simplification method closely approximates the actual structure of the robotic arm and provides continuous boundaries, thus improving its accuracy. Therefore, this study uses this method to simplify the dual arms, as shown in Figure 3. In the kinematic analysis, each robotic arm link is represented by a capsule consisting of a cylindrical body with hemispherical ends. The gradient projection method is used to calculate the shortest distance between capsules and between capsules and environmental obstacles. Compared to other models, the capsule model simplifies the shortest distance calculation to compute the distance between cylinders and hemispheres, avoiding high computational costs and significantly enhancing computational efficiency.

2.2.2. Shortest Distance between Left Arm and Obstacle k

To simplify the system without losing generality, the i-th link of the left arm, the j-th link of the right arm, and the surrounding obstacle k are taken as the objects of study to analyze the shortest distance between the i-th link of the left arm and the surrounding obstacle k when an object is being transported. The geometric relationship between the i-th link of the left arm and the surrounding obstacle k is as shown in Figure 4.
The points A L i and B L i represent the start and end joints of the i-th link of the left arm, and their position vectors in the base frame are a and b, respectively. The length of the i-th link in the capsule-simplified model of the left arm is l L i . Then, the unit vector of the i-th link of the left arm is
e L i = b a l L i
The position vector of the center of the surrounding obstacle k located in the robot’s vision in the base frame is c. The shortest point on the axis of the i-th link of the left arm from the obstacle k is recorded as C L i k 1 . The position of point C L i k 1 is related to the projection value β L i k 1 of obstacle k on the axis of the i-th link of the left arm, and its expression is as follows:
β L i k 1 = e L i T ( c a )
where e L i T is the transpose matrix of e L i .
The position vector of the shortest point C L i k 1 on the axis of the i-th link of the left arm from the obstacle k in the base frame is expressed as
g = {   a ; β L i k 1 < 0 a + β L i k 1 e L i ; 0 β L i k 1 l L i b ; β L i k 1 > l L i
Therefore, the shortest distance between the geometric center of the surrounding obstacle k and the axis of the i-th link of the left arm is given by
d L i k 1 = g c
where ||·|| represents the modulus of the vector.
Considering the volume elements of the left arm and the surrounding obstacle, the shortest distance between the surrounding obstacle k and the i-th link of the left arm is modified as
d L i k 1 = d L i k 1 R L i R k
where R L i is the radius of the i-th link of the left arm in the capsule-simplified model of the redundant arms, and R k is the radius of the surrounding obstacle k.

2.2.3. Shortest Distance between Left Arm and Right Arm

When an object is being transported, the j-th link of the slave arm acts as an obstacle to the i-th link of the left arm. The shortest distance between the i-th link of the left arm and the j-th link of the right arm is analyzed, and its geometric relationship is as shown in Figure 5.
Points A R j and B R j represent the start and end joints of the j-th link of the right arm, respectively, and their position vectors in the robot’s base frame are h and m. The shortest points on the axis of the i-th link of the left arm from the start and end joints of the j-th link of the right arm are recorded as C L i k 2 and C L i k 3 , respectively, and their position vectors in the robot’s base frame are r and s, respectively.
The start joint of the j-th link of the right arm is taken as the obstacle to the i-th link of the left arm. At this time, the projection of the start joint of the j-th link of the right arm on the axis of the i-th link of the left arm is expressed as follows:
β L i j 2 = e L i T ( h a )
According to the method in Equation (4), the shortest distance on the axis of the i-th link of the left arm from the start joint of the j-th link of the right arm is calculated as
d L i j 2 = r h
where r is the position vector of the shortest point C L i k 2 on the axis of the i-th link of the left arm from the start joint of the j-th link of the right arm in the base frame.
Similarly, considering the volume element of the arm, the shortest distance between the i-th link of the left arm and the start joint of the j-th link of the right arm is modified as
d L i j 2 = d L i j 2 R L i R R j
where R S j is the radius of the j-th link of the right arm in the capsule-simplified model of the arms.
The end joint of the j-th link of the right arm is taken as the obstacle to the i-th link of the left arm. At this time, the projection of the end joint of the j-th link of the right arm on the axis of the i-th link of the left arm is given as
β L i j 3 = e L i T ( m a )
Similarly, the shortest distance between the axis of the i-th link of the left arm and the end joint of the j-th link of the right arm can be calculated by
d L i j 3 = s m
where s is the position vector of the shortest point C L i k 3 on the axis of the i-th link of the left arm from the end joint of the j-th link of the right arm in the base frame.
Based on the volume elements of the dual-arm robot, the shortest distance between the i-th link of the left arm and the j-th link’s end joint of the right arm is modified as
d L i j 3 = d L i j 3 R L i R R j
Using the above method, the shortest distance between the surrounding obstacle k and each link of the left arm is derived in turn, and the minimum value is recorded as d L 1 . When the start and end joints of each link of the right arm are regarded as the obstacle of the left arm, respectively, the shortest distance to each link of the left arm is given, and the minimum values are recorded as d L 2 and d L 3 , respectively. Therefore, the shortest distance between the left arm and all obstacles including the surrounding obstacle k and the link joints of the right arm is given by
d 0 L = min { d L 1 , d L 2 , d L 3 }
The point marked on the link’s axis of the left arm corresponding to the shortest distance is p 0 L , called the left arm marker, and its position vector in the robot’s base frame is recorded as p 0 L .
Similarly, the shortest distance between the joints of each link on the left arm and the surrounding obstacle k from the right arm can be provided as
d 0 R = min { d R 1 , d R 2 , d R 3 }
The point marked on the link’s axis of the right arm corresponding to the shortest distance is p 0 R , called the right arm marker, and its position vector in the robot’s base frame is recorded as p 0 R .

2.3. Obstacle-Avoidance Algorithm in Coordinating Operation

During the coordinating operation of a redundant dual-arm robot, there is inevitably a certain overlap area between the operation spaces of the left and right arms. Moreover, in a complex operating environment, the environmental obstacles inevitably affect the coordinating operation of the two arms, making self-collision and environment-collision likely and causing the coordinating operation of the arms to fail. Therefore, it is necessary to plan the trajectories and velocities of a redundant dual-arm robot. The motion-correction algorithm adjusts the redundant joints in the null space at each iteration based on the current end-effector position, target position, and obstacle information. Adjustments in the null space do not affect the end-effector trajectory, ensuring that the robot can reliably complete its tasks.

2.3.1. Obstacle-Avoidance Motion Space

During the coordinating operation of a redundant dual-arm robot, if the shortest distance d 0 L between the left arm marker p 0 L and the obstacle at a specific time is less than the set “distance threshold”, the arm will generate an obstacle-avoidance action. As the arm moves in three-dimensional space, to reduce the number of computations and improve the operation efficiency of the algorithm, a reduced obstacle-avoidance motion space is introduced [13,22]. The arm only moves along the line between the geometric center of the obstacle and the marker, as shown in Figure 6. At this time, the obstacle-avoidance motion space is reduced from three dimensions to one dimension.
At this moment, the position vector of the geometric center of the obstacle with the shortest distance from the left arm to the marker p 0 L is expressed as
d 0 L = p 0 L c
Its unit vector is expressed as
n 0 L = d 0 L d 0 L
The velocity p ˙ 0 L and Jacobian matrix J 0 L for the obstacle avoidance of the marker on the left arm can be rewritten as
p ˙ d 0 L = n 0 L T p ˙ 0 L
J d 0 L = n 0 L T J 0 L
After the reduced motion space is introduced, the marker’s velocity on the left arm to avoid obstacles in the operation space changes from p ˙ 0 L R m × 1 to p ˙ d 0 L R 1 × 1 , and the Jacobian matrix changes from J 0 L R m × n to J d 0 L R 1 × n .
Similarly, after the reduced motion space is introduced, the velocity and Jacobian matrix for the obstacle avoidance of the marker p 0 R on the right arm in the operation space are as follows:
p ˙ d 0 R = n 0 R T p ˙ 0 R
J d 0 R = n 0 R T J 0 R
The marker’s velocity on the right arm to avoid obstacles in the operation space changes from p ˙ 0 R R m × 1 to p ˙ d 0 R R 1 × 1 , and the Jacobian matrix changes from J 0 R R m × n to J d 0 R R 1 × n . n 0 R is the unit vector of the position vector of the obstacle from the shortest point of the right arm to the right arm marker. The introduction of a reduced motion space dramatically reduces the number of computations.

2.3.2. Obstacle-Avoidance Algorithm Theory

According to the kinematic constraint equation for the obstacle avoidance of a redundant single-arm robot in the literature [24,25], and combined with Equation (1), the obstacle-avoidance algorithm in the coordinating operation of a redundant dual-arm robot can be written as follows:
q ˙ = J + x ˙ + i = L R [ J d 0 i ( I J + J ) ] + ( p ˙ d 0 i J d 0 i J + x ˙ )
The superscript “+” represents the Moore–Penrose inverse of the matrix, and I is the identity matrix; J + x ˙ represents the joint motion required to maintain the coordinating operation of two arms under the condition of the minimum norm solution; [ J d 0 L ( I J + J ) ] + ( p d 0 L J d 0 L J + x ˙ ) represents the joint motion required for the left arm to avoid obstacles under the condition of sacrificing the minimum norm solution; the matrix J d 0 L ( I J + J ) represents the degrees of freedom for the marker P 0 L on the left arm to avoid obstacles without generating end-effector motion. It converts the movement of the marker on the left arm to avoid obstacles from Cartesian space to the corresponding joint space motion through the pseudo-inverse solution. [ J d 0 R ( I J + J ) ] + ( p ˙ d 0 R J d 0 R J + x ˙ ) represents the joint motion required for the right arm to avoid obstacles by sacrificing the minimum norm solution, and the matrix J d 0 R ( I J + J ) represents the degrees of freedom for the marker P 0 R on the right arm to avoid obstacles without generating end-effector motion. It converts the movement of the marker on the right arm to avoid obstacles from Cartesian space to the corresponding joint space motion through the pseudo-inverse solution.
To ensure the effective control of the marker for obstacle-avoidance movement during the coordinating operation of a dual-arm robot, Equation (21) is modified as follows:
q ˙ = J + x ˙ + i = L R α i [ J d 0 i ( I J + J ) ] + ( γ i p ˙ d 0 i J d 0 i J + x ˙ )
where α i ( d 0 i ) is the velocity weight factor for the marker to avoid obstacles, γ i ( d 0 i ) is the gain of the joint angular velocity, and d 0 i is the distance between the marker and the obstacle.
The distance threshold d n ( n = 1 ,   2 ,   3 ) is introduced to ensure the smooth motion of the arms in the joint frame while avoiding collisions. The relationship between the weight factors α i ( d 0 i ) , γ i ( d 0 i ) , and d n can be given by
α i ( d 0 i ) = { 0 d 0 i d 3 c 0 + c 1 d 0 i + c 2 d 0 i 2 + c 3 d 0 i 3 d 2 d 0 i < d 3 1 d 1 d 0 i < d 2
γ i ( d 0 i ) = { 0 d 0 i d 3 0 d 2 d 0 i < d 3 k 0 + k 1 d 0 i + k 2 d 0 i 2 d 1 d 0 i < d 2
where d 1 , d 2 , and d 3 are three set distance thresholds; c0, c1, c2, c3, k0, k1, and k2 are constant coefficients whose values are as follows:
{ k 0 = γ m a x d 2 2 d 1 2 2 d 1 d 2 + d 2 2 k 1 = 2 γ m a x d 2 d 1 2 2 d 1 d 2 + d 2 2 k 2 = γ m a x d 1 2 2 d 1 d 2 + d 2 2 ;   { c 0 = d 3 3 + 3 d 2 d 3 3 d 2 3 3 d 2 2 d 3 + 2 d 2 d 3 2 d 3 3 c 1 = 6 d 2 d 3 d 2 3 3 d 2 2 + 3 d 2 d 3 2 d 3 3 c 2 = 3 ( d 2 + d 3 ) d 2 3 3 d 2 2 d 3 + 3 d 2 d 3 2 d 3 3 c 3 = 2 d 2 3 3 d 2 2 d 3 + 3 d 2 d 3 2 d 3 3
When d 0 i d 3 , it is a safe area. Let α i = γ i = 0 , meaning that the angular velocity values of the joints of the left and right arms are solved under the minimum norm solution condition. At this time, Equation (22) is rewritten as
q ˙ = J + x ˙
When d 2 d 0 i d 3 , it is an early warning area. The velocity weight factor of the marker is not introduced, meaning that γ i = 0 . However, α i changes according to Equation (23) so that the homogeneous solution of the joint angular velocity gradually increases from zero. At this time, the redundant arm starts to avoid collisions to ensure that the arm runs smoothly while staying away from obstacles. When d 0 i decreases to d 2 , α i reaches the maximum value α max , and Equation (25) is rewritten as
q ˙ = J + x ˙ i = L R α i [ J d 0 i ( I J + J ) ] + J d 0 i J + x ˙
When d 1 d 0 i d 2 , it is a dangerous area. With the further reduction of d 0 i , the velocity gain γ i of the marker increases rapidly from zero according to Equation (24), and, thus, the homogeneous solution of the joint angular velocity changes rapidly to ensure the smooth operation of the arm while accelerating the collision-avoidance action of the arm. When d 0 i decreases to d 1 , γ i reaches the maximum value γ max , and Equation (26) is rewritten as
q ˙ = J + x ˙ + i = L R α max [ J d 0 i ( I J + J ) ] + ( γ i p ˙ d 0 i J d 0 i J + x ˙ )

2.4. Simulation Analysis

To verify the algorithm’s effectiveness, it was applied to a redundant dual-arm robot, as shown in Figure 1. The initial values of the joint angles of the redundant dual-arm robot are listed in Table 1. The velocity for avoiding obstacles at the marker on the arm was set to 15 mm/s, and the three distance thresholds were set as d1 = 15 mm, d2 = 30 mm, and d3 = 45 mm. The initial and target positions of the geometric center of the object to be handled were A = (766, 0, 556) mm and B = (441, 0, 291) mm. To ensure the safe operation of the robot, the physical movement range of each joint was restricted to prevent the robotic arm from exceeding its designed limits. Moreover, when solving the inverse kinematics of the robotic arm, the principle of minimum energy consumption was followed to select the optimal solution.
The given task requirements are as follows. The dual-arm robot was required to move the object from the initial position A to the target position B at a constant speed along a straight line by a coordinating operation and to avoid self-collisions and collisions with surrounding obstacles while keeping the posture of the object unchanged. The time t was set as 10 s, and two spherical obstacles with radius r = 50 mm were established in the workspace in the coordinating operation of the dual-arm robot. The positions of the geometric center in the base frame were O1 = (370, 55, −130) mm and O2 = (500, −110, −200) mm.
For the case in which the robot did not plan for obstacle avoidance, the simulation motion trajectory in the coordinated operation of the dual-arm robot is shown in Figure 7a. The two arms collided at the end of the second link during the period of t = 4–10 s, and the collision intensified with time. During the period of t = 6–10 s, the end of the second link of the master arm collided with obstacle O1, and the third link of the slave arm collided with obstacle O2. With time, the collisions between the arms and the surrounding obstacles intensified, and the coordinated operation task of the dual-arm robot failed.
When only considering the two arms as obstacles to each other, without considering the influence of surrounding obstacles on the motion of the manipulator, the simulation motion trajectory in the coordinated operation of the dual-arm robot is shown in Figure 7b. From the simulation results, it can be seen that during the period of t = 0–6 s, the ends of the second link of the master and slave arms gradually approached each other, and at the time where t = 6 s, the set safety threshold was reached. During the whole process of the coordinated operation of the dual-arm robot, there were no collisions between the links of the master arm and those of the slave arm. During the period of t = 6–10 s, the end of the second link of the master arm collided with obstacle O1, and the third link of the slave arm collided with obstacle O2. With time, the collisions intensified, and the coordinated operation task of the dual-arm robot failed.
It can be seen from the previous two groups of simulations that, although the end-effector of the dual-arm robot could complete the predetermined operation trajectory, collisions between each link of the master arm and those of the slave arm as well as between the links of the arms and the surrounding obstacles occurred. Therefore, in the trajectory planning in the coordinated operation of a dual-arm robot, it is necessary to realize the influence of surrounding obstacles while considering the links of the two arms to be obstacles to each other.
The trajectory planning simulation was carried out using the obstacle avoidance algorithm proposed in the process of simulation implementation. It comprehensively considered the mutual obstacles of the two arms and the surrounding obstacles. The motion simulation trajectory is shown in Figure 7c. It can be seen from the simulation results that during the entire process of the coordinated operation of the dual-arm robot, there were no collisions between the links of the two arms and no collisions between the links and surrounding obstacles. The real-time shortest distance between each link of the master arm and those of the slave arm, as well as the distances between the links of the arms and the surrounding obstacles, was always greater than the set safety threshold.
Compared with the previous three groups of experiments, it can be seen that after adopting the obstacle-avoidance algorithm proposed in this study, the redundant dual-arm robot not only completed the coordinated operation but also realized real-time self-collision avoidance and surrounding obstacle avoidance by using the self-motion characteristics of the redundant arms of the dual-arm robot. Through three groups of simulations, it was proven that the algorithm in this study is indispensable for ensuring the safety of the coordinated operation of the dual-arm robot.

3. Results and Discussion

3.1. Experimental Scenario

To verify the obstacle-avoidance algorithm in the coordinating operation of the redundant dual-arm robot, the experimental platform shown in Figure 8 was built. The robot body was a redundant dual-arm robot from Shanghai Zhiyin Automation Technology Co., Ltd., Shanghai, China, with an operating range of 591 mm for a single arm and seven degrees of freedom for each arm. The motion capture equipment was the OptiTrack high-performance optical motion capture system produced by the American Natural Point Company, which included a camera, switch, camera gimbal, and three-dimensional (3D) PTZ (pan, tilt, zoom) system. The pneumatic grippers were installed at the ends of the dual-arm robotic arms, which gripped a cylindrical object powered by a pneumatic pump. Two small balls were placed in the workspace in the coordinating operation of the dual-arm robot to act as surrounding obstacles.
To capture the distance information between each link of the dual-arm robot and between each link and the surrounding obstacles during the 3D motion of the redundant dual-arm robot, five optical cameras of the OptiTrack motion capture device were reasonably arranged in space in this experiment, so the dual-arm robot was always within the field of view of each camera during the motion. At the same time, the markers were pasted on the outer surface of each joint of the arm and the geometric center of the object to be transported. The OptiTrack motion capture system captured the 3D motion information of these markers and fed the information to a laptop computer connected to it. The motion control frequency for the robot was set at 250 Hz, and the obstacle-avoidance algorithm was executed at 50 Hz. These values can be adjusted based on specific requirements.

3.2. Experimental Results

To make the redundant dual-arm robot run safely and stably in the process of a coordinating operation, the obstacle-avoidance algorithm proposed in this study, which comprehensively considers self-collision and environment-collision, was used to carry out a trajectory planning experiment. The motion trajectory for the coordinating operation of the dual-arm robot is shown in Figure 9.
The shortest distance between the left arm, the right arm, and the environment in the entire motion process of the robot during the coordinating operation were analyzed and calculated, as shown in Figure 10. The angular changes of the joints of the left and right arms are shown in Figure 11a,b, respectively.
It can be seen from Figure 9 and Figure 10 that during the period of t = 0–0.2 s, the shortest distance between each link of the left arm and those of the right arm, as well as the distances between the links of the arms and the surrounding obstacles, was always greater than the threshold d3 without collision, and the dual-arm robot performed an object-holding task. The second link of the left arm approached the obstacle during the period of t = 0.2–3.8 s, and its shortest distance was between the thresholds d3 and d2. The system issued an early warning, and the dual-arm robot took obstacle-avoidance actions while performing the given task. At time t = 3.8 s, the shortest distance reached the threshold d2, and the obstacle-avoidance action was accelerated to keep away from the obstacle.
The distances between each link of the right arm and the obstacle were always greater than the threshold d3 during the period of t = 0.2–0.6 s, and no collision occurred. During the period of t = 0.4–4.6 s, the third link was close to the obstacle. When the shortest distance was between the thresholds d3 and d2, the system issued an early warning and took obstacle-avoidance actions. At time t = 4.6 s, the shortest distance reached the threshold d2, and the obstacle-avoidance action was accelerated to keep away from the obstacles.
Figure 10 and Figure 11a demonstrate that the second link of the left arm approached the obstacle during the period of t = 0.2–3.8 s, and the angle of joint 1 changed faster so that the marker on the second link moved far away from the obstacle. It can be seen from Figure 10 and Figure 11b that the third link of the right arm approaches the obstacle during the period of t = 0.4–4.6 s, and the angle of joint 2 changes faster so that the marker on the third link moves far away from the obstacle. It can be seen in Figure 9, Figure 10 and Figure 11 that during the entire process of the coordinating operation of the dual-arm robot, there were no self-collisions and environment-collisions. The shortest distance between the left arm, the right arm, and the environment were always greater than the set safety threshold. Additionally, the algorithm ensured smooth and continuous movements while coordinating the operation.
The effectiveness of this algorithm was validated in controlled experimental environments. However, a broad application in real-world scenarios requires addressing its limitations in unstructured environments and operational complexity. Zhao et al. [26] proposed an online policy learning method that avoids the latency of traditional offline learning by adjusting control strategies in real time, enabling quick responses to dynamic task demands. Similarly, Dong et al. [27] proposed a method for capturing and modeling complex relationships in heterogeneous networks using meta-path strategies, which excels in identifying complex patterns in data, thereby enhancing the robot’s rapid adaptation and response capabilities in complex environments. Su et al. [28] presented the robot-assisted minimally invasive surgery method, which combines teaching-by-demonstration and advanced modeling techniques. Using dynamic time warping and Gaussian mixture model-based dynamic movement primitives, it creates detailed 3D surgical skill models from multiple human demonstrations, enhancing the system’s precision in replicating complex surgical operations.
Although these methods do not directly address dual-arm robots’ obstacle avoidance, they provide significant methodological support for improving operational efficiency and safety. Future research can incorporate these methods by introducing online policy learning and meta-path-based modeling techniques into dual-arm service robots’ control systems for real-time adaptive adjustments, enhancing response speed and task execution efficiency in dynamic environments. Additionally, utilizing dynamic time warping and Gaussian mixture model techniques can improve algorithmic precision and flexibility in handling complex tasks. Integrating these advanced methods will further enhance dual-arm service robots’ obstacle-avoidance capabilities and overall performance in complex environments and operations.

4. Conclusions

In this study, an obstacle-avoiding algorithm for a dual-arm robot is proposed to avoid self-collision and environment-collision. The algorithm utilizes a distance threshold to assess potential collision risks between the robot’s arms and surrounding obstacles. It incorporates a velocity weight to dynamically adjust the arm’s speed, thereby ensuring smooth and continuous joint motion. Furthermore, the shortest distance calculation method proposed in this study corrects inaccuracies previously encountered during obstacle avoidance. The collision-avoidance method could provide potential benefits for various scenarios such as medical robots and rehabilitating robots.
Although this study makes a certain advancement, the algorithm was only tested in environments with static, spherical obstacles, which simplifies real-world scenarios. Future research will explore advanced control strategies to improve the safety and efficiency of dual-arm service robots in coordinated operations. The algorithm’s applicability will be extended to integrate visual detection techniques to enhance obstacle avoidance in unstructured environments. Additionally, the robot’s operational intelligence will be improved to enable more autonomous task completions in complex environments.

Author Contributions

Conceptualization, Z.Y. and S.G.; validation, H.L. and P.W.; writing—original draft preparation, Z.Y.; writing—review and editing, S.G. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Shanghai Science and Technology Program [Grant No. 21511101701].

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The dataset analyzed in the current study is available from the corresponding author on reasonable request.

Acknowledgments

The authors wish to express appreciation and gratification to the Science and Technology Commission of Shanghai Municipality for the financial support toward the study.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Lee, I. Service Robots: A Systematic Literature Review. Electronics 2021, 10, 2658. [Google Scholar] [CrossRef]
  2. Li, J.; Xie, J.; Wang, J.; Wen, Y.; Guo, S. Pyramid Transformer: A Multi-size Object Detection Model with Limited Device Requirements for the Nursing Robot. In Proceedings of the IEEE International Conference on Tools with Artificial Intelligence, New York, NY, USA, 31 October–2 November 2022. [Google Scholar]
  3. Wang, G.; Ye, F.; Zhang, N.; Wang, M. Design and Implementation of Medical Service Robot with Single Arm and Tracking Function. In Proceedings of the IEEE International Conference on Information and Automation (ICIA), Yinchuan, China, 26–28 August 2013. [Google Scholar]
  4. Tlach, V.; Kuric, I.; Ságová, Z.; Zajacko, I.; Bujnak, J.; Guagliano, M. Collaborative assembly task realization using selected type of a human-robot interaction. Transp. Res. Procedia 2019, 40, 541–547. [Google Scholar] [CrossRef]
  5. Chanthasopeephan, T.; Srikirin, P.; Srisap, M.; Rattapat, A. Flexure Design of a Compliant Modular Hyper-Redundant Manipulator. In Proceedings of the IEEE International Symposium on Robot and Human Interactive Communication (RO-MAN), Lisbon, Portugal, 28 August–1 September 2017. [Google Scholar]
  6. Su, H.; Sandoval, J.; Makhdoomi, M.; Ferrigno, G.; De Momi, E. Safety-enhanced Human-Robot Interaction Control of Redundant Robot for Teleoperated Minimally Invasive Surgery. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Brisbane, Australia, 21–25 May 2018. [Google Scholar]
  7. Wang, H.; Li, R.; Gao, Y.; Cao, C.; Ge, L. Comparative study on the redundancy of mobile single- and dual-arm robots. Int. J. Adv. Robot. Syst. 2017, 13, 1729881416666782. [Google Scholar] [CrossRef]
  8. Xie, J.; Zhu, D.; Wang, J.; Guo, S. A Training-Evaluation Method for Nursing Telerobot Operator with Unsupervised Trajectory Segmentation. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Kyoto, Japan, 23–27 October 2022. [Google Scholar]
  9. Peng, Y.; Carabis, D.; Wen, J. Collaborative manipulation with multiple dual-arm robots under human guidance. Int. J. Intell. Robot. 2018, 2, 252–266. [Google Scholar] [CrossRef]
  10. Lu, H.; Guo, S.; Yang, Z.; Chen, L.; Deng, F.; Wang, H. Research on Dynamic Modeling and Parameter Identification of 2R Coupling Drive Joint. J. Mech. Eng. 2022, 58, 51–64. [Google Scholar]
  11. Qu, J.; Zhang, F.; Wang, Y.; Fu, Y. Human-like coordination motion learning for a redundant dual-arm robot. Robot. Comput-Integr. Manuf. 2019, 57, 379–390. [Google Scholar] [CrossRef]
  12. Kavraki, L.; Svestka, P.; Latombe, J.; Overmars, M. Probabilistic roadmaps for path planning in high-dimensional configuration spaces. IEEE Trans. Robot. Autom. 1996, 12, 566–580. [Google Scholar] [CrossRef]
  13. Khatib, O. Real-time obstacle avoidance for manipulators and mobile robots. Int. J. Robot. Res. 1986, 5, 90–98. [Google Scholar] [CrossRef]
  14. Shen, H.; Wu, H.; Chen, B.; Yan, C.; Jiang, Y. Obstacle avoidance algorithm for coordinated motion of redundant dual-arm robot. Trans. Chin. Soc. Agric. Mach. 2015, 46, 356–361. [Google Scholar]
  15. Li, Y.; Xu, D. Cooperative path planning of dual-arm robot based on attractive force self-adaptive step size RRT. Robot 2020, 42, 606–616. [Google Scholar]
  16. Wang, J.; Liu, S.; Zhang, B.; Yu, C. Manipulation Planning with Soft Constraints by Randomized Exploration of the Composite Configuration Space. Int. J. Control Autom. Syst. 2021, 19, 1340–1351. [Google Scholar] [CrossRef]
  17. Wu, C.; Yue, Y.; Wei, B.; Liu, D. Self-collision detection and motion planning for dual-arm robot. J. Shanghai Jiaotong Univ. 2018, 52, 45–53. [Google Scholar]
  18. Shi, W.; Wang, K.; Zhao, C.; Tian, M. Obstacle Avoidance Path Planning for the Dual-Arm Robot Based on an Improved RRT Algorithm. Appl. Sci. 2022, 12, 4087. [Google Scholar] [CrossRef]
  19. Li, X.; Li, S.; Han, K.; Li, Z.; Xiong, Y.; Xie, Z. Real-time Self-collision Avoidance-oriented Torque Control Strategy for Dual-arm Robot. Inf. Control 2023, 52, 211–219. [Google Scholar]
  20. Siciliano, B.; Khatib, O.; Kröger, T. Springer Handbook of Robotics, 2nd ed.; Springer: Berlin/Heidelberg, Germany, 2008; pp. 701–708. [Google Scholar]
  21. Chiacchio, P.; Chiaverini, S.; Siciliano, B. Direct and inverse kinematics for coordinated motion tasks of a two-manipulator system. J. Dyn. Syst. Meas. Control-Trans. ASME 1996, 118, 691–697. [Google Scholar] [CrossRef]
  22. Chen, Y.; Ju, M.; Hwang, K. A virtual torque-based approach to kinematic control of redundant manipulators. IEEE Trans. Ind. Electron. 2016, 64, 1728–1736. [Google Scholar] [CrossRef]
  23. Li, Y.; Feng, S.; Zhu, D.; Guo, S.; Song, Y.; Tian, Q. Safety Control of a Redundant Dual-arm Robot for Transfer-care Task. J. Mech. Eng. 2023, 59, 76–89. [Google Scholar]
  24. Zhang, J.; Hu, P.; Zhang, X.; Liu, J.; Liu, X. Closed loop control obstacle avoidance based on the transformation of master and slave tasks. J. Mech. Eng. 2017, 53, 21–27. [Google Scholar] [CrossRef]
  25. Shen, H.; Wu, H.; Chen, B.; Yang, X. Obstacle avoidance algorithm for redundant robots based on transition between the primary and secondary tasks. Robot 2014, 36, 425–429. [Google Scholar]
  26. Zhao, J.; Lv, Y.; Zeng, Q.; Wan, L. Online Policy Learning Based Output-Feedback Optimal Control of Continuous-Time Systems. IEEE Trans. Circuits Syst. II Express Briefs 2024, 71, 652–656. [Google Scholar] [CrossRef]
  27. Dong, Y.; Hu, Z.; Wang, K.; Sun, Y.; Tang, J. Heterogeneous network representation learning. In Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence, Yokohama, Japan, 7–15 January 2021. [Google Scholar]
  28. Su, H.; Mariani, A.; Ovur, S.; Menciassi, A.; Ferrigno, G.; De Momi, E. Toward teaching by demonstration for robot-assisted minimally invasive surgery. IEEE Trans. Autom. Sci. Eng. 2021, 18, 484–494. [Google Scholar] [CrossRef]
Figure 1. Schematic diagram of a redundant dual-arm robot.
Figure 1. Schematic diagram of a redundant dual-arm robot.
Bioengineering 11 00550 g001
Figure 2. Frames of a redundant dual-arm robot.
Figure 2. Frames of a redundant dual-arm robot.
Bioengineering 11 00550 g002
Figure 3. Capsule-enveloping simplified model of redundant arms of a dual-arm robot.
Figure 3. Capsule-enveloping simplified model of redundant arms of a dual-arm robot.
Bioengineering 11 00550 g003
Figure 4. Schematic diagram of the geometric relationship between the i-th link of the left arm and the obstacle k.
Figure 4. Schematic diagram of the geometric relationship between the i-th link of the left arm and the obstacle k.
Bioengineering 11 00550 g004
Figure 5. Schematic diagram of the geometric relationship between the i-th link of the left arm and the j-th link of the right arm.
Figure 5. Schematic diagram of the geometric relationship between the i-th link of the left arm and the j-th link of the right arm.
Bioengineering 11 00550 g005
Figure 6. Obstacle-avoidance movement of the marker.
Figure 6. Obstacle-avoidance movement of the marker.
Bioengineering 11 00550 g006
Figure 7. Motion trajectory in the coordinated operation of the dual-arm robot (a) without considering collision avoidance, (b) only considering the arms as obstacles to each other, and (c) considering the two arms as mutual obstacles and surrounding obstacles.
Figure 7. Motion trajectory in the coordinated operation of the dual-arm robot (a) without considering collision avoidance, (b) only considering the arms as obstacles to each other, and (c) considering the two arms as mutual obstacles and surrounding obstacles.
Bioengineering 11 00550 g007
Figure 8. Experimental platform of coordinating operation of a redundant dual-arm robot.
Figure 8. Experimental platform of coordinating operation of a redundant dual-arm robot.
Bioengineering 11 00550 g008
Figure 9. Motion trajectory for the coordinating operation of the dual-arm robot considering self-collision and environment-collision.
Figure 9. Motion trajectory for the coordinating operation of the dual-arm robot considering self-collision and environment-collision.
Bioengineering 11 00550 g009
Figure 10. Shortest distance between the left arm, the right arm, and the environment.
Figure 10. Shortest distance between the left arm, the right arm, and the environment.
Bioengineering 11 00550 g010
Figure 11. Angular variation curves for each joint of the (a) left arm and (b) right arm.
Figure 11. Angular variation curves for each joint of the (a) left arm and (b) right arm.
Bioengineering 11 00550 g011
Table 1. Initial joint angle values of a redundant dual-arm robot.
Table 1. Initial joint angle values of a redundant dual-arm robot.
Angleq1/(°)q2/(°)q3/(°)q4/(°)q5/(°)q6/(°)q7/(°)
Left−5−80454056.359.2−2.5
Right580−45−40−56.3−59.22.5
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

Yang, Z.; Lu, H.; Wang, P.; Guo, S. Coordinating Obstacle Avoidance of a Redundant Dual-Arm Nursing-Care Robot. Bioengineering 2024, 11, 550. https://doi.org/10.3390/bioengineering11060550

AMA Style

Yang Z, Lu H, Wang P, Guo S. Coordinating Obstacle Avoidance of a Redundant Dual-Arm Nursing-Care Robot. Bioengineering. 2024; 11(6):550. https://doi.org/10.3390/bioengineering11060550

Chicago/Turabian Style

Yang, Zhiqiang, Hao Lu, Pengpeng Wang, and Shijie Guo. 2024. "Coordinating Obstacle Avoidance of a Redundant Dual-Arm Nursing-Care Robot" Bioengineering 11, no. 6: 550. https://doi.org/10.3390/bioengineering11060550

APA Style

Yang, Z., Lu, H., Wang, P., & Guo, S. (2024). Coordinating Obstacle Avoidance of a Redundant Dual-Arm Nursing-Care Robot. Bioengineering, 11(6), 550. https://doi.org/10.3390/bioengineering11060550

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