Next Article in Journal
Estimation of Ricci Curvature for Hemi-Slant Warped Product Submanifolds of Generalized Complex Space Forms and Their Applications
Previous Article in Journal
Symmetries and Asymmetries in Branching Processes
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Asymmetric Collision-Free Optimal Trajectory Planning Method for Three DOF Industrial Robotic Arms

1
HDU-ITMO Joint Institute, Hangzhou Dianzi University, Hangzhou 310018, China
2
School of Automation, Hangzhou Dianzi University, Hangzhou 310018, China
*
Author to whom correspondence should be addressed.
Symmetry 2023, 15(6), 1155; https://doi.org/10.3390/sym15061155
Submission received: 12 May 2023 / Revised: 18 May 2023 / Accepted: 23 May 2023 / Published: 26 May 2023
(This article belongs to the Section Engineering and Materials)

Abstract

:
To improve the speed and dynamic adaptability of robotic arm trajectory planning, a collision-free optimal trajectory planning method combining non-uniform adaptive time meshing and bounding box collision detection was proposed. First, the dynamics and objective function of the asymmetric industrial robotic arm with three degrees of freedom (DOF) was formulated in the form of the dynamic optimization problem. Second, the control vector parameterization (CVP) was improved to enhance the computational performance of the problem. The discrete grid was adaptively adjusted according the trend of control variables. Then, a quick and effective collision detection strategy was used to avoid obstacles and to speed up calculation efficiency. The non-collision constraint is built by transforming the collision detection into the distance between two points, and then is combined into the dynamic optimization problem. The solution of the new optimization problem with the improved CVP leads to the higher calculation performance and the avoidance of obstacles. Lastly, the Siemens Manutec R3 robotic arm is taken as an example to verify the effectiveness of the planning method. The approach not only reduces computation time but also maintains accurate calculations, so that optimal trajectory can be selected from symmetric paths near the obstacles. When weights were set as λ1 = λ2 = 0.5, the solution efficiency was improved by 33%, and the minimum distance between the robotic arm and obstacle could be 0.08 m, which ensured that there was no collision.

1. Introduction

In recent years, industrial robotic arms (RA) have been widely used in various industrial production fields, such as welding, assembly, grinding, cutting, palletizing and spraying, due to their flexibility, high efficiency, high precision, repeatability, etc. As a result of the constant increase in the complexity of the production environment and the requirements of production efficiency, solving the optimal trajectory problem (OTP) efficiently has evolved into a crucial task in the use of the robotic arm [1].
OTP is essentially a nonlinear optimal control problem (OCP) with complex constraints. In general, by optimizing the control vector, the RA reaches a predetermined terminal state from an initial state under a series of complex constraints [2]. At present, the solution method for OCP includes numerical methods and heuristic algorithms, etc. [3]. Typical representatives of numerical methods are orthogonal collocation and CVP. The nonlinear programming (NLP) problem generated by OCP through CVP discretization has a smaller dimension and the results obtained are more accurate, so the CVP is widely used to solve OCP. However, solving NLP problems requires multiple processing of differential equations. In order to obtain more precise optimization results and increase the efficiency of the solution, it is necessary to optimize the time grid partition to make it more similar to the actual control curve of the decision variable with fewer time grids [4]. Therefore, researchers have proposed their time grid optimization strategies. Combined with grid partition, Liu et al. proposed a fast CVP algorithm based on the fourth-order Runge-Kutta. The approximation strategy improves the solution efficiency by increasing the ratio between the control variable parameters and the number of integral nodes in the solution of differential equations [5]. Shi et al. proposed a non-uniform CVP, in which the control vector and the length of each grid are solved as decision variables [6]. Guo et al. proposed a CVP based on orthogonal design, which builds a temporal grid based on the range obtained from orthogonal experiments [7]. The experimental study showed that the above-improved methods can greatly cut down on solving time while maintaining the solution’s accuracy.
Moreover, the RA will undoubtedly run into obstacles while moving due to the intricacy of the working environment. Consequently, when planning the manipulator’s trajectory, obstacle avoidance must be taken into full account. Collision-free trajectory planning, which is being investigated by numerous researchers, depends on an accurate collision detection algorithm. The bounding box collision detection (BBCD) was developed to effectively obtain the ideal trajectory, streamline object-to-object collision detection, and decrease detection complexity [8]. Zhao et al. obtained the optimal trajectory by combining the oriented bounding box (OBB) with the ant colony algorithm [9]. Hou designed the hierarchical axis-aligned bounding box (AABB), which can effectively implement the obstacle avoidance function of the manipulator [10]. Yang made an improvement to the storage method of the AABB in the planning process, improving the computational efficiency of optimal trajectories [11]. Fu combined the cylinder bounding box (CBB) with the artificial potential field and also planned collision-free optimal trajectories [12]. Wang used the OBB to obtain smooth RA trajectories [13]. Gan proposed an improved hybrid bounding box and changed the detection traversal rules to improve the computational efficiency while meeting the accuracy requirements [14]. Based on the idea of a sphere bounding box (SBB) and spatial superposition, Zhu simplifies the description of the spatial relationship between the obstacle and the manipulator to check whether there is a collision [15].
The solution strategy directly affects the efficiency and accuracy of the solution. If we require high precision but the calculation is heavy and the calculation time is long, it is difficult to perform real-time trajectory planning. On the contrary, the robot arm is likely to collide with obstacles or the RA cannot reach the target point. For BBCD, if the bounding box is not selected properly, it usually generates a large amount of redundant space in the box, which is not good for trajectory planning. To improve the rapidness and dynamic adaptability of RA trajectory planning, an optimal trajectory calculation method that combines BBCD and non-uniform adaptive time meshing is proposed in this paper.
The rest of this paper is organized as follows. Section 2 depicts the dynamics model of the Siemens Manutec R3 3-DOF asymmetric industrial robotic arm (R3-RA, The Siemens Inc., Munich, Germany) and the optimal trajectory problem. Section 3 presents the grid adaptive CVP (GA-CVP) method and performs simulation comparison under MATLAB 2020b (The MathWorks Inc., Natick, MA, USA). Section 4 presents the multi-sphere BBCD method and performs simulation comparison under MATLAB 2020b. Section 5 summarizes the work of this paper.

2. Problem Description

Figure 1 shows the R3-RA, which is used for simulation in this study. It has three rotational axis, positive for counterclockwise rotation. q i describes the relative angle between arm i 1 and arm i for i = 1 , 2 , 3 . In the following article, θ is used to represent q.
The asymmetric dynamics model of R3-RA is shown below [16,17,18]:
M θ t · θ ¨ t = D · u t + C ( θ ˙ t , θ t ) + G θ t
Hereby, θ t = [ θ 1 ( t ) , θ 2 ( t ) , θ 3 ( t ) ] T is the rotation angle between adjacent links on the joint axis, in rad ; θ ˙ t is the relative angular velocity on the joint axis, in rad / s ; θ ¨ t is the relative plus angular velocity on the joint axis, in rad / s 2 ; u t = [ u 1 ( t ) , u 2 ( t ) , u 3 ( t ) ] T is the time-dependent torque voltage on the joint axis, in V ; D is 3 × 3 diagonal constant matrix; M θ is 3 × 3 positive-definite symmetric mass matrix containing rotational inertia. θ is a simplified form of θ t , which is also a variable for time t. M θ is shown in Equation (2).
M 1 , 1 θ = c 1 sin 2 θ 2 + θ 3 + c 2 sin θ 2 + θ 3 sin θ 2 + c 3 sin 2 θ 2 M 1 , 2 θ = c 7 cos θ 2 + θ 3 + c 8 cos θ 2 M 1 , 3 θ = c 7 cos θ 2 + θ 3 M 2 , 2 θ = c 2 cos θ 3 + c 9 M 2 , 3 θ = c 10 cos θ 3 + c 11 M 3 , 3 θ = c 12
Hereby, c i i = 1 , 2 , , 12 is constant, as Table 1 shown.
C ( θ ˙ , θ ) is the torque caused by Coriolis and centrifugal forces and has the following structure for i = 1 , 2 , 3 :
C ( θ ˙ , θ ) = j = 1 3 [ k = 1 3 Γ i , j , k θ θ ˙ k ] θ ˙ j Γ i , j , k θ = 1 2 [ M i j θ θ k + M i , k θ θ j M j , k θ θ i ]
G θ is the torque due to the gravitational force, as shown in the following equation.
G 1 g θ = 0 G 2 g θ = b 1 cos θ 2 sin θ 3 + b 1 sin θ 2 cos θ 3 + b 2 sin θ 2 G 3 g θ = b 1 sin θ 2 + θ 3
Hereby, b i ( i = 1 , 2 ) is a constant, as Table 1 shown. In Table 1, m = 15   k g is transport load, g = 9.81   m / s 2 is gravity constant.
When the time optimal is the goal of trajectory planning, we can obtain the objective function [19]:
min J 1 = t f
where, t f is the time required for the manipulator to complete its trajectory, also known as the terminal time.
With energy optimisation as the goal of trajectory planning, we can obtain the objective function [20]:
min J 2 = 0 t f i = 1 n u i ( t ) 2 d t
where, u i t is the torque voltage on the corresponding joint axis, i = 1 , , n . n is the number of robot joints.
According to Equations (5) and (6), when the integrated optimization of time and energy is the goal of trajectory planning, we obtain the objective function [21]:
min J = λ 1 t f + λ 2 0 t f i = 1 n u i t 2 d t
where, λ 1 and λ 2 are the weighting factors for the energy and time terms. The two weights can be manually set, but λ 1 + λ 2 = 1 must be satisfied. The remaining variables have the same meaning as Equations (5) and (6).
According to Equations (1)–(4), considering obstacle avoidance, the mathematical expression for the OTP of the R3-RA is as follows:
min U i t t f J = λ 1 t f + λ 2 0 t f i = 1 n u i t 2 d t s . t       v ˙ t = M θ t 1 · [ D · u t + C v t , θ t + G θ ( t ) ] θ 0 = θ initial θ t f = θ target v 0 = 0 v t f = 0 u ̲ u t u ¯ θ ̲ θ t θ ¯ v ̲ v t v ¯ t [ 0 , t f ] d i t > 0 i = 1 , 2 , , n
where, v t = θ ˙ t . d i ( t ) is the distance of the ith joint of the robot arm to the obstacle at the t moment, and if the distance is greater than 0, the collision-free trajectory can be generated. RA starts at t = 0 and ends at t = t f . According to the theory of inverse kinematics, the initial joint angle θ initial and the target joint angle θ target can be calculated based on the known initial state and target state of RA’s position. Moreover, it has a constraint such that the angular velocity of each joint of the robot is 0 when the RA is in initial state and target state. The torque voltage on each joint axis, each joint angle and angular velocity are in line with its upper and lower limits. In this study, R3-RA has three joints, so n = 3 .

3. Control Vector Parameter Based on Grid Adaptation

CVP discretizes the control variables in the whole horizon by grid partition, divides them into components corresponding to time subintervals, and uses the polynomial approximation method with finite parameters to approximately represent the components so that we have finite-dimensional static NLP problems [22]. Therefore, we adopt a slope-based GA-CVP, which greatly reduces the computational burden after grid refinement.

3.1. Grid Reconfiguration Strategy

The uniform discretization-based control vector parameterization is unified and fixed. To approximate the control variable well, the whole control horizon must be partitioned very densely [23]. However, too many time grids will lead to a sharp increase in computation.
Figure 2 shows that the slope can well reflect the variation of the control variable throughout the control time domain. The control variables in the time interval [ t 0 , t a ] are exponentially decreasing with a sharp change in slope. The control variables in the time interval [ t a , t b ] are flatter with a smaller change in slope. The change in the slope of the control variable between each adjacent time subinterval reflects the above phenomenon well. The increasing slope will cause the curve of the control variable will change significantly, so it is necessary to refine the time subinterval [ t 0 , t a ] and increase the number of time grids, so as to improve its approximation accuracy. When the slope gradually decreases, it means that the control variables change little or hardly at all. Thus, it does not require too many time grids. By doing this, the number of time grids in the time subinterval [ t a , t b ] can be reduced in the time subinterval [ t a , t b ] and eliminating the redundant grids, thus reducing the dimensionality of NLP and also the time required for the computation.
As shown in Figure 3, the following two slope information is defined within the left and right time subintervals [ t j , i 1 , t j , i ] and [ t j , i , t j , i + 1 ] of the time node t j , i .
The left slope of the time node t j , i s j , i .
s j , i = C j , i + 1 C j , i t j , i t j , i 1
The right slope of the time node t j , i of s j , i + .
s j , i + = C j , i + 1 C j , i t j , i + 1 t j , i
where, C j , i , C j , i + 1 are the time subintervals [ t j , i 1 , t j , i ] and [ t j , i , t j , i + 1 ] of the control parameters.

3.1.1. Merging of Time Grid Nodes

The purpose of merging time grid nodes is to eliminate the time subintervals that have less impact on the accuracy of the approximation in the parameterization process, and to reduce the number of unnecessary parameters. Thus, it can reduce the dimensionality of the nonlinear programming and shorten the time for the calculation. Equation (11) shows the rules for merging time grid.
s j , i + s j , i + ξ c
where, ξ c is the merging factor.
If the left slope t j , i of the time node s j , i and the right slope s j , i + satisfy the Equation (11), it means that this time node has little influence on the accuracy of the approximation, and the time node t j , i can be deleted, i.e., the time subinterval [ t j , i 1 , t j , i ] and [ t j , i , t j , i + 1 ] can be merged. For the obtained subinterval [ t j , i 1 , t j , i + 1 ] after merging, the values of its control parameters are the average of the control parameters C j , i and C j , i + 1 .

3.1.2. Insertion of Time Grid Nodes

When the control variable curve changes rapidly and the slope is large enough, the time subinterval corresponding to this part of the curve needs to be divided using more grids to improve the approximation accuracy for the control variable curve. Equations (12) and (13) show the rules for inserting the time grid nodes.
Δ k 1 = 1 ( s j , i ) ξ 1 , ξ 2 2 ( s j , i ) ξ 2 , ξ 3 m ξ 1 ( s j , i ) ξ m ξ 1 , ξ m ξ s j , i 0
Δ k 2 = 1 ( s j , i + ) ξ 1 , ξ 2 2 ( s j , i + ) ξ 2 , ξ 3 m ξ 1 ( s j , i + ) ξ m ξ 1 , ξ m ξ s j , i + 0
where, ξ i ( i = 1 , 2 , , m ξ ) is the insertion coefficient, Δ k 1 and Δ k 2 are both the number of insertion time nodes.
For the time nodes t j , i with left and right slopes s j , i and s j , i + , if Equations (12) and (13) are satisfied, [ t j , i 1 , t j , i ] and [ t j , i , t j , i + 1 ] are inserted with the corresponding number of time nodes. Through merging and inserting grid node, the grid becomes non-uniform and asymmetric, avoiding unnecessary computations.

3.1.3. Algorithm Termination Conditions

By reconstructing the temporal grid, the next iteration of the optimized post-temporal grid division can be obtained. So on and so forth, until the termination condition is satisfied. GA-CVP solution algorithm termination conditions are mainly the following two kinds.
The first one is set to the number of iterations L, which is greater than the upper limit L max .
L > L max
The second one is that the difference between the absolute values of the two objective function values J L + 1 and J L obtained from the L + 1 th and Lth iterations is less than the allowable error.
J L + 1 J L < ξ J
where, ξ J is the allowable error of the difference between the absolute values of the objective function values J L + 1 and J L .

3.2. Algorithm Steps and Flow Chart

Figure 4 shows the flow chart of GA-CVP.
Step 1: set the iteration number L = 0 , the initial number of discrete-time lattices N ( 0 ) and the initial values of the control parameters C j , i ( 0 ) for each time lattice, the merging coefficients ξ c , the insertion coefficients ξ i ( i = 1 , 2 , , m ξ ) , the tolerance error x i J and the upper limit of iterations L max .
Step 2: based on the discretized control parameters, C j , i ( L ) solves the initial value problem of the differential equation consisting of N ( L ) time grids discretized to obtain the state variables and the objective function value of this cycle J ˜ ( C j , i ( L ) ) under the current discrete grid number.
Step 3: determine whether the termination condition is satisfied, and if so, jump out of the loop and return the current optimal value. Otherwise, according to the control parameters C j , i ( L ) and the number of time grids N ( L ) , calculate the left and right slopes of each time node under the current number of time grids. Based on the merged time node rule Equation (11) and the inserted time node rule Equations (12) and (13), calculate the refined time grid number N ( L + 1 ) and its corresponding control parameters C j , i ( L + 1 ) . Let L = L + 1 and proceed to step 2.

3.3. Numerical Results

Equation (16) is the initial state, target state and constraints of OTP(8) without obstacles.
θ 0 = [ 0   rad , 1.5   rad , 0   rad ] θ t f = [ 1   rad , 1.95   rad , 1   rad ] v i 0 = 0   rad / s v i t f = 0   rad / s u i t 7.5   V i = 1 , 2 , 3 θ 1 t 2.97   rad θ 2 t 2.01   rad θ 3 t 2.86   rad v 1 t 3.0   rad / s v 2 t 1.5   rad / s v 3 t 5.2   rad / s t [ 0 , t f ]
The three initial control parameters are set to the mean values of the respective control variables u i ( t )   ( i = 1 , 2 , 3 ) constrained. The weighting coefficients are set as λ 1 = λ 2 = 0.5 . The joint space under the task requirement can be obtained by MATLAB simulation calculation. Figure 5 shows the angle variation of each joint. Figure 6 shows the corresponding angular velocity variation of each joint.
From Figure 5, it can be obtained that the trajectories by UD-CVP and GA-CVP, the the joint angle variables at the initial moment and the joint angle variables at the terminal moment meet the task requirements, indicating that the end of the R3 can move accurately from the initial position to the target position. Moreover, each joint angle during the motion is within the range of the constraints. Each angle changing of each joint is smooth, but the angle changing of each joint obtained by GA-CVP is smoother. From Figure 6, it can be seen that the trajectories obtained by UD-CVP and GA-CVP, the joint angular velocity at the initial moment and the joint angular velocity at the terminal moment meet the task requirements. The angular velocity of each joint during the motion is within the range of the angular velocity constraints.
Table 2, Table 3 and Table 4 show the results of the OTP with three different weights. Comparing the results of UD-CVP with N = 15 and N = 50 for three different weights, it reveals that as the number of discrete-time grids N increases, the number of optimization parameters increases and the accuracy is improved, but the time for the solution also increases significantly. When λ 1 = 0.99 and λ 2 = 0.01 , the objective function values obtained by the UD-CVP ( N = 50 ) and the GA-CVP ( N = 15 ) are the same, and the solution time required by the GA-CVP ( N = 15 ) is 86% of the UD-CVP ( N = 50 ). The solution efficiency is improved by 14%. Comparing Table 3 and Table 4 under two different weights, although the accuracy of the solution of the UD-CVP ( N = 50 ) is higher than that of the GA-CVP ( N = 15 ). The solution time required by the GA-CVP is shorter. When the weights take λ 1 = 0.5 , λ 2 = 0.5 , the solution time required by the GA-CVP is only 37% of the UD-CVP, and the solution efficiency is improved by 63% in this case. When the weights are taken as λ 1 = 0.01 , λ 2 = 0.99 , the solution time required by the GA-CVP is only 1/5 of the UD-CVP. The solution efficiency is improved by 78% in this case. The simulation demonstrates that the mesh redistribution based on the difference of slope is effective in improving the computational efficiency and shortening the solution time.
Table 5 shows the results of the OTP with different optimization weights. When λ 1 is larger, the optimized center of gravity is biased towards time, so the time for the R3 to move from the initial position to the target position is relatively shorter, while its energy consumption is relatively larger. When λ 2 is larger, the center of gravity of optimization is biased towards energy. R3 consumes relatively less energy and takes relatively longer time to move from the initial position to the target position. When λ 1 [ 0 , 0.5 ) , the optimized values of J 1 = t f and J 2 = 0 t f i = 1 n u i ( t ) 2 d t change very little, so it is recommended that λ 1 is taken in the range of [ 0.5 , 1 ] .

4. Optimal Trajectory Planning for Robotic Arm with Obstacles

Whether the RA can successfully avoid obstacles, the key is to determine the distance d i ( t ) from the RA to the obstacles. Moreover, near the obstacle, it is easy to generate a symmetric path, and the RA needs to quickly optimize it to choose a better trajectory to move. If the modeling is based on the shape of the robot and the obstacle, for checking whether they collide at each moment, it will make the computational complexity much higher and the solution more difficult to obtain. Therefore, this study uses the bounding box detection method to simplify the collision detection object model and reduce the computational complexity.

4.1. Bounding Box Collision Detection

According to the shape characteristics of the bounding box, the bounding box can be classified as CBB, AABB, or SBB, etc. The computational complexity of collision detection decreases with the simplification of the bounding box shape. However, the simple shape may lead to poor envelope sealing to the envelope of the RA, which directly affects the collision detection sensitivity [24].

4.1.1. Collision Detection Based on Cylinder Bounding Box

Figure 7 shows the spatial position relationship between the CBB of the i-th link of the RA and the obstacle. To simplify the calculation, the cylinder can be considered as a line segment, while the radius r i of the sphere surrounding the obstacle is increased by the radius r O o of the cylinder. Thus, the collision detection problem is simplified into an intersection detection problem between a line and a ball in space.
The sphere of the obstacle has a centre of O o x O o , y O o , z O o . The first and last coordinates of the i-th link of the robot are ( x i , y i , z i ) , ( x i + 1 , y i + 1 , z i + 1 ) . From the centre O o , a vertical line segment is drawn towards the link i and intersects the line segment at the point P i . Suppose the coordinate of the foot point P i is ( x P i , y P i , z P i ) . We obtain the equation of a straight line in space:
x P i = α i x i + 1 x i + x i y P i = α i y i + 1 y i + y i z P i = α i z i + 1 z i + z i
The coordinates of the foot point P i can be determined by the proportional coefficient α i in the Equation (17). We will typically want to ensure that the robot has a safety margin d safe [25]. Thus, we want to enforce the following constraints at each time step.
x P i x O o 2 + y P i y O o 2 + z P i z O o 2 ( r O o + r k + d safe ) 0 i = 1 , 2 , , n

4.1.2. Collision Detection Based on Multi-Sphere Bounding Box

The SBB uses a sphere with the smallest radius that can completely enclose the object to approximate the RA. The object is projected onto the coordinate axes, and the two points farthest apart are obtained. Take the midpoint of the line segment connecting the two points as the center of the sphere. The length of the line segment is used as the diameter of the sphere to construct the minimum SBB.
Suppose the coordinates of the center of the sphere are O c x c , y c , z c , and the radius of the sphere is r c . The obstacle enveloped by a SBB, its spherical center and radius are O o x O o , y O o , z O o and r O o .
According Figure 8, the distance d c d between the centers of the two spheres can be calculated by the spatial expression of the two spheres.
d c O o = O c O o = x c x O o 2 + y c y O o 2 + z c z O o 2
It is simple to check for collisions between R3-RA and obstacles by SBB. However, the distribution of the R3-RA over the three coordinate axes is not uniform. When R3-RA is enveloped by the SBB, there will be a large amount of redundant space inside, which will lead to a decrease in the accuracy of collision detection and a considerable increase in the solution time. After analyzing the shape of the R3-RA, we decided to use multiple spheres of different sizes to envelope the RA, so that it could compensate for the poor compactness.
Select a set of points O i k on the centre line of the i-th link as the centre of the bounding sphere, and define the corresponding radius r i k . Make point O k i as centre, such that the set O i k = { O i k | k = 1 , 2 , , N s } of spheres can fully envelop the i-th link. Figure 9 shows the multi-sphere surrounding the RA.
Similarly, we want to enforce the following constraints at each time step.
O i k O o ( r O o + r k + d safe ) 0 i = 1 , 2 , , n
Hereby, O i k is the center of the k-th bounding ball on the i-th link, k = 1 , 2 , , N s , N s is the number of bounding balls on the link. O i k O o can be specifically expressed by Equation (19).

4.2. Numerical Results

In order to more fully test the collision-free trajectory planning based on the two bounding box, we test them under two different task requirements. Task 1: θ initial = [ 0 rad , 1.5 rad , 0 rad ] , θ target = [ 1 rad , 1.95 rad , 1 rad ] . The coordinates of the ball centre surrounding the obstacles are 0.26   m , 0.10   m , 1.13   m , the radius of the ball surrounded by obstacles is r O o = 0.04   m and the safety distance is d safe = 0.01   m . parse-numbers = false Task 2: θ initial = [ 0 rad , π / 2 rad , 0 rad ] , θ target = [ π / 2 rad , π / 5 rad , π / 2 rad ] . The coordinates of the ball centre surrounding the obstacles are 0.70   m , 0.63   m , 0.70   m , the radius of the ball is r O o = 0.1   m and the safety distance is d safe = 0.01   m .
According to the obstacle positions, it is found that only the third link is likely to collide with the obstacle during the RA running, so the collision-free constraint using CBB in OTP (8) can be simplified:
x P 3 x O o 2 + y P 3 y O o 2 + z P 3 z O o 2 ( r O o + r k + d safe ) 0
With N s different spheres enveloping the third link, the collision-free constraint in OTP (8) can be simplified:
x 3 k x O o 2 + y 3 k y O o 2 + z 3 k z O o 2 r 3 k + r O O + d safe 0 k = 1 , , N s
Except for the no-collision constraint, other constraints are shown in the Equation (16). Set the weighs λ 1 = λ 2 = 0.5 . The collision-free OTP is solved by GA-CVP, and the simulation is carried out on MATLAB. Figure 10 and Figure 11 show the angular velocity for each joint angle during RA motion. Figure 12 and Figure 13 show the angular velocity for each joint angle during RA motion.
According to the four curves in Figure 10 and Figure 11, the joint angles at the initial and terminal moments of the RA meet the task requirements. The manipulator can move accurately from the initial position to the target position, and each joint rotation is within the range. It is clear that all four curves are smooth. This indicates that the joint angle changes smoothly and that there are no sudden changes in angle. It can be seen from Figure 12 and Figure 13 that the angular velocities of the joints are also within the velocity constraints. Both θ ˙ 2 in Figure 13a at t [ 0.66 , 0.88 ] and θ ˙ 2 in Figure 13b at t [ 0.63 , 0.882 ] reach their maximum angular velocity, indicating that they are constrained by their respective upper line of angular velocities during these periods.
Figure 14 and Figure 15 show that the trajectory of the manipulator was simulated in MATLAB. Based on the four trajectories in Figure 14 and Figure 15, it can be seen that both the trajectories based on the CBB and MSBB are effective in avoiding obstacles. Moreover, the trajectory of the manipulator is smooth for different tasks. By comparing Figure 14a with Figure 14b, it can be seen that the trajectory planned based on MSBB is closer to the obstacle. The CD based on MSBB is more sensitive.
To further compare the CD sensitivity and computational complexity of the two bounding boxes, MSBB with a different number of spheres is used to envelop the link. When M = 5 , the minimum enclosing sphere radius r O k M of MSBB is slightly larger than the radius r 3 of the CBB, so the number of enclosing spheres M of MSBB is 20, 15, 10, 6, 5. Based on these conditions, we record the shortest distance d min between the manipulator and the obstacle and the calculation time for two different tasks. Table 6 and Table 7 show the results.
From Table 6 and Table 7, it is seen that the shortest distance is d min > 0 between the robot arm and the obstacle. It indicates that the collision-free trajectory can be successfully planned under both conditions of Task 1 and Task 2 based on the two different bounding boxes. When the number of enveloping spheres M = 20 , 15 , 10 , 6 of MSBB, the shortest distance between the manipulator and the obstacle for both Task 1 and Task 2 is smaller than that based on the CBB. Therefore, MSBB is more sensitive when the minimum enclosing ball radius r O k M is smaller than the cylinder radius r 3 . Moreover, in Task 1, the minimum distance based on MSBB ( M = 20 ) is nearly one half of the minimum distance based on the CBB. However, as the number of envelope spheres M increases, the calculation time also increases. In real-world applications, it is necessary to take into account the relation between the quantity of envelope spheres and the calculation time. Choose the appropriate number of envelope balls, the requirement of the shortest distance d min is met. The real-time requirement of movement is also met.

5. Conclusions

In this study, the approach combining non-uniform adaptive time grid and BBCD is used to solve the asymmetric collision-free OTP with comprehensive optimization goal of time and energy. First, based on the multi-sphere envelope RA, the collision detection is realized by using the spatial position relationship, Then, this relationship is used as the non-collision constraint in OTP. Secondly, according to the changing trend of the control vector, GA-CVP merges or inserts the original time nodes into the grid to form a new asymmetric time grid. After that, the OTP is transformed to the non-uniform discrete NLP problem. Finally, the NLP problem is solved with the new grid. Simulation experiments show that the approach proposed not only ensures the solution accuracy but also improves the solution efficiency, to obtain optimal trajectory from symmetric paths near the obstacles.
On the other hand, the proposed method is specifically applied to R3-RA, the generalizability of the approach to RA with different DOF or different type should be further studied. Moreover, the optimization of the solution process of differential equations is the focus of future work. When implemented in practice, a trade-off should be made between obstacle avoidance sensitivity and computation time, an appropriate number of enclosing spheres should be selected.

Author Contributions

In this work, W.W. was inspired with the help of Y.L. and H.W.’s communication, and completed the design, implementation, experimental analysis, and paper writing under the guidance of A.J. and the assistance of K.M. All authors have read and agreed to the manuscript of the published version.

Funding

This research was supported by “Pioneer” and “Leading Goose” R&D Program of Zhejiang (2023C01024) and the National Natural Science Foundation of China (61973102).

Data Availability Statement

The data that support the findings of this study are available from the corresponding author, upon reasonable request.

Conflicts of Interest

The authors declared no potential conflict of interest for the research, authorship, and/or publication of this article.

References

  1. Zhang, C.; Wang, Y.; Ma, X.; Mu, C. Obstacle Avoidance Path Planning of Manipulator with Improved Artificial Potential Field Method. Modul. Mach. Tools Autom. Process. Technol. 2023, 4, 27–30. [Google Scholar]
  2. Ekrem, O.; Aksoy, B. Trajectory Planning for a 6-axis Robotic Arm with Particle Swarm Optimization Algorithm. Eng. Appl. Artif. Intell. 2023, 122, 106099. [Google Scholar] [CrossRef]
  3. Wang, L.; Wang, X.; Liu, G.; Sheng, Z. Preference-based Multi-Objective Shark Optimization Algorithm for Train Operation. J. Sci. Instrum. 2020, 41, 245–256. [Google Scholar]
  4. Liu, P.; Liu, H.; Qiu, G.; Liu, X. Gauss Time Grid Parametric Trajectory Planning for Hypersonic Vehicle under Thermal Rate Constraint. Control Theory Appl. 2022, 39, 2283–2292. [Google Scholar]
  5. Liu, P.; Li, G.; Yang, J.; Liu, X. Fast Numerical Algorithm for Optimal Control of Swing in Container Handling. Control Theory Appl. 2019, 36, 1275–1282. [Google Scholar]
  6. Shi, B.; Yin, Y.; Liu, F. Optimal Feeding Control of Biochemical Reaction Process based on Non-Uniform Parameterization. In Proceedings of the 30th Chinese Process Control Conference (CPCC 2019) Abstract Set. Process Control Committee of the Chinese Society of Automation, Kunming, China, 1–2 August 2019; pp. 36–44. [Google Scholar]
  7. Guo, H.; Mo, Y.; Zhang, Y. Orthogonal Design-based Control Vector Parameterization Combined with Improved Seagull Optimization Algorithm for Dynamic Optimization Problems. IEEE Access 2022, 10, 65238–65256. [Google Scholar] [CrossRef]
  8. Zhou, M.; Zhang, X. Fast Collision Checking for Dual-Arm Collaborative Robots Working in Close Proximity. In Proceedings of the 2022 International Conference on Robotics and Automation (ICRA), Philadelphia, PA, USA, 23–27 May 2022; pp. 243–249. [Google Scholar]
  9. Zhao, H.; Lei, C.; Jiang, N. Path Planning of 6-DOF Manipulator based on Improved Ant Colony Algorithm. J. Zhengzhou Univ. (Sci.) 2020, 52, 120–126. [Google Scholar]
  10. Hou, D.; Wang, X.; Liu, J.; Yang, B.; Hou, G. Research on Collision Avoidance Technology of Manipulator based on AABB Hierarchical Bounding Box Algorithm. In Proceedings of the 5th Asian Conference on Artificial Intelligence Technology (ACAIT), Haikou, China, 29–31 October 2021; pp. 406–409. [Google Scholar]
  11. Yang, F. AABB Bounding Box Collision Detection Algorithm based on B+ Tree Storage. Comput. Sci. 2021, 48, 331–333. [Google Scholar]
  12. Fu, Z.; Yu, Q.; Xiong, P.; Wang, Z.; Zhao, Z. Simulation of Manipulator Path Planning based on Improved Artificial Potential Field Method. Mach. Tool Hydraul. 2021, 49, 20–24. [Google Scholar]
  13. Wang, X.; Wang, T.; Ding, W. Manipulator Path Planning based on Improved Artificial Potential Field Method. Comb. Mach. Tool Autom. Mach. Technol. 2022, 06, 24–27. [Google Scholar]
  14. Gan, B.; Dong, Q. An Improved Optimal Algorithm for Collision Detection of Hybrid Hierarchical Bounding Box. Evol. Intell. 2022, 15, 2515–2527. [Google Scholar] [CrossRef]
  15. Zhu, Z.; Jing, S.; Zhong, J.; Wang, M. Obstacle Avoidance Path Planning of Space Redundant Manipulator based on a Collision Detection Algorithm. Xibei Gongye Daxue Xuebao/J. Northwestern Polytech. Univ. 2020, 38, 183–190. [Google Scholar] [CrossRef]
  16. Zhang, S.; Dai, S.; Zanchettin, A.M.; Villa, R. Trajectory Planning based on Non-Convex Global Optimization for Serial Manipulators. Appl. Math. Model. 2020, 84, 89–105. [Google Scholar] [CrossRef]
  17. Verstraten, T.; Schumacher, C.; Furnémont, R.; Seyfarth, A.; Beckerle, P. Redundancy in Biology and Robotics: Potential of Kinematic Redundancy and its Interplay with Elasticity. J. Bionic Eng. 2020, 17, 695–707. [Google Scholar] [CrossRef]
  18. Qiao, P.; Wu, Y.; Ding, J. Optimal Control of a Black-Box System based on Surrogate Models by Spatial Adaptive Partitioning Method. ISA Trans. 2020, 100, 63–73. [Google Scholar] [CrossRef] [PubMed]
  19. Christ, F.; Wischnewski, A.; Heilmeier, A.; Lohmann, B. Time-Optimal Trajectory Planning for a Race Car Considering Variable Tyre-Road Friction Coefficients. Veh. Syst. Dyn. 2021, 59, 588–612. [Google Scholar] [CrossRef]
  20. Li, X.; Gu, Y.; Wu, L.; Sun, Q.; Song, T. Time and Energy Optimal Trajectory Planning of Wheeled Mobile Dual-Arm Robot based on Tip-Over Stability Constraint. Appl. Sci. 2023, 13, 3780. [Google Scholar] [CrossRef]
  21. Sang, W.; Sun, N.; Zhang, C.; Qiu, Z.; Fang, Y. Hybrid Time-Energy Optimal Trajectory Planning for Robot Manipulators with Path and Uniform Velocity Constraints. In Proceedings of the 2022 13th Asian Control Conference (ASCC), Jeju Island, Republic of Korea, 4–7 May 2022; pp. 334–340. [Google Scholar]
  22. Xu, W.; Jiang, A.; Jiang, E.; Zhang, Q. A Fast and Efficient Control Vector Parameterization Optimization Method. J. Hangzhou Dianzi Univ. (Nat. Sci.) 2019, 39, 40–46. [Google Scholar]
  23. Wu, D.; Chen, Y.; Yu, C.; Bai, Y.; Teo, K.L. Control Parameterization Approach to Time-Delay Optimal Control Problems: A survey. J. Ind. Manag. Optim. 2023, 19, 3750–3783. [Google Scholar] [CrossRef]
  24. Chen, X.; You, X.; Jiang, J.; Ye, J.; Wu, H. Trajectory Planning of Dual-Robot Cooperative Assembly. Machines 2022, 10, 689. [Google Scholar] [CrossRef]
  25. Rösmann, C.; Makarow, A.; Bertram, T. Online Motion Planning based on Nonlinear Model Predictive Control with Non-Euclidean Rotation Groups. In Proceedings of the 2021 European Control Conference (ECC), Delft, The Netherlands, 29 June–2 July 2021; IEEE: Piscataway, NJ, USA; pp. 1583–1590. [Google Scholar]
Figure 1. The three DOF industrial RA.
Figure 1. The three DOF industrial RA.
Symmetry 15 01155 g001
Figure 2. Schematic diagram of grid reconfiguration strategy.
Figure 2. Schematic diagram of grid reconfiguration strategy.
Symmetry 15 01155 g002
Figure 3. Information on the left and right slopes of time nodes t j , i .
Figure 3. Information on the left and right slopes of time nodes t j , i .
Symmetry 15 01155 g003
Figure 4. GA-CVP algorithm flow chart.
Figure 4. GA-CVP algorithm flow chart.
Symmetry 15 01155 g004
Figure 5. Angle change curve of each joint ( λ 1 = λ 2 = 0.5 ).
Figure 5. Angle change curve of each joint ( λ 1 = λ 2 = 0.5 ).
Symmetry 15 01155 g005
Figure 6. Angular velocity variation curve of each joint ( λ 1 = λ 2 = 0.5 ).
Figure 6. Angular velocity variation curve of each joint ( λ 1 = λ 2 = 0.5 ).
Symmetry 15 01155 g006
Figure 7. Simplified schematic diagram of robot and obstacle model.
Figure 7. Simplified schematic diagram of robot and obstacle model.
Symmetry 15 01155 g007
Figure 8. Sphere position diagram.
Figure 8. Sphere position diagram.
Symmetry 15 01155 g008
Figure 9. Simplified schematic diagram of the manipulator model.
Figure 9. Simplified schematic diagram of the manipulator model.
Symmetry 15 01155 g009
Figure 10. Curve of the change in the angle of each joint during robot movement (Task 1).
Figure 10. Curve of the change in the angle of each joint during robot movement (Task 1).
Symmetry 15 01155 g010
Figure 11. Curve of the change in the angle of each joint during robot movement (Task 2).
Figure 11. Curve of the change in the angle of each joint during robot movement (Task 2).
Symmetry 15 01155 g011
Figure 12. Angular velocity variation curve for each joint during robot motion (Task 1).
Figure 12. Angular velocity variation curve for each joint during robot motion (Task 1).
Symmetry 15 01155 g012
Figure 13. Angular velocity variation curve for each joint during robot motion (Task 2).
Figure 13. Angular velocity variation curve for each joint during robot motion (Task 2).
Symmetry 15 01155 g013
Figure 14. Robot end trajectory diagram (Task 1).
Figure 14. Robot end trajectory diagram (Task 1).
Symmetry 15 01155 g014
Figure 15. Robot end trajectory diagram (Task 2).
Figure 15. Robot end trajectory diagram (Task 2).
Symmetry 15 01155 g015
Table 1. R3-RA Parameters.
Table 1. R3-RA Parameters.
ParameterNumerical ValueParameterNumerical Value
c 1 8.0604812 + 0.9601m c 8 −3.2963900
c 2 12.1806 + 0.98m c 9 85.2298937 + 1.2104m
c 3 20.1794125 + 0.25m c 10 6.0903 + 0.49m
c 4 0.39 c 11 7.9484812 + 0.9604m
c 5 0.64 c 12 12.5504812 + 0.9604m
c 6 17.2112712 b 1 (12.1806 + 0.98m)g
c 7 −0.0110568 b 2 (41.7325 + 0.50m)g
Table 2. Results of the OTP with integrated time and energy optimization ( λ 1 = 0.99 , λ 2 = 0.01 ).
Table 2. Results of the OTP with integrated time and energy optimization ( λ 1 = 0.99 , λ 2 = 0.01 ).
MethodNumber of IterationsNumber of ParametersValueCalculation Time (s)Sum of Time (s)
UD-CVP ( N = 15 )1450.993317.215017.2150
UD-CVP ( N = 50 )11500.9924111.1380111.1380
GA-CVP ( N = 15 )1450.993317.215095.9480
21460.992478.7330
Table 3. Results of the OTP with integrated time and energy optimization ( λ 1 = λ 2 = 0.5 ).
Table 3. Results of the OTP with integrated time and energy optimization ( λ 1 = λ 2 = 0.5 ).
MethodNumber of IterationsNumber of ParametersValueCalculation Time (s)Sum of Time (s)
UD-CVP ( N = 15 )14513.250811.236011.2360
UD-CVP ( N = 50 )115013.2279108.8620108.8620
GA-CVP ( N = 15 )14513.250811.236039.9380
214113.234728.7020
Table 4. Results of OTP with integrated time and energy optimization ( λ 1 = 0.01 , λ 2 = 0.99 ).
Table 4. Results of OTP with integrated time and energy optimization ( λ 1 = 0.01 , λ 2 = 0.99 ).
MethodNumber of IterationsNumber of ParametersValueCalculation Time (s)Sum of Time (s)
UD-CVP ( N = 15 )14525.256615.377015.3770
UD-CVP ( N = 50 )115025.2113248.0260248.0260
GA-CVP ( N = 15 )14525.256615.377054.7670
214025.224839.3900
Table 5. Results of OTP with integrated time and energy optimization with different weights.
Table 5. Results of OTP with integrated time and energy optimization with different weights.
λ 1 λ 2 Value J 1 = t f J 2 = 0 t f i = 1 n u i ( t ) 2 d t
0.990.010.99240.640635.81293814
0.90.13.41470.912725.93269761
0.750.257.11280.988425.48609053
0.50.513.2279125.45583174
0.250.7519.3419125.45585704
0.010.9925.2113125.45582902
Table 6. Angular velocity variation curve of each joint during robot motion (Task 1).
Table 6. Angular velocity variation curve of each joint during robot motion (Task 1).
Collision Detection Method       Calculation Time/s        d min / m
CBB       325.8470       0.1320
MSBB ( M = 20 )        712.4350       0.0779
MSBB ( M = 15 )        477.6600       0.0811
MSBB ( M = 10 )        415.4250       0.0922
MSBB ( M = 6 )        309.3350       0.1230
MSBB ( M = 5 )        220.7140       0.1411
Table 7. Angular velocity variation curve of each joint during robot motion (Task 2).
Table 7. Angular velocity variation curve of each joint during robot motion (Task 2).
Collision Detection Method       Calculation Time/s        d min / m
CBB       262.0840       0.1920
MSBB ( M = 20 )        542.6440       0.1220
MSBB ( M = 15 )        467.9660       0.1401
MSBB ( M = 10 )        301.3400       0.1444
MSBB ( M = 6 )        175.8210       0.1894
MSBB ( M = 5 )        141.1260       0.1947
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

Wu, W.; Jiang, A.; Mao, K.; Wang, H.; Lin, Y. An Asymmetric Collision-Free Optimal Trajectory Planning Method for Three DOF Industrial Robotic Arms. Symmetry 2023, 15, 1155. https://doi.org/10.3390/sym15061155

AMA Style

Wu W, Jiang A, Mao K, Wang H, Lin Y. An Asymmetric Collision-Free Optimal Trajectory Planning Method for Three DOF Industrial Robotic Arms. Symmetry. 2023; 15(6):1155. https://doi.org/10.3390/sym15061155

Chicago/Turabian Style

Wu, Wenhao, Aipeng Jiang, Kai Mao, Haodong Wang, and Yamei Lin. 2023. "An Asymmetric Collision-Free Optimal Trajectory Planning Method for Three DOF Industrial Robotic Arms" Symmetry 15, no. 6: 1155. https://doi.org/10.3390/sym15061155

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