# Research on Input Scheme Selection of a Novel Parallel Mechanism

Authors: Yajun Chen; Yongbin Li; Dong Yang; Tiejun Li
Journal: Journal of Robotics
 (2021)

---

## Abstract

When the two arms of the robot are transporting the heavy loads together, a new parallel mechanism is formed. The actuator input selection and optimization of the parallel mechanism are basic and important problems in mechanism research. In this paper, a 2-RPPPS dual-arm robot is taken as the research object. Firstly, based on the screw theory and input selection principle, 158 reasonable schemes are obtained. Then, an evaluation mechanism is established to screen out the schemes that do not conform to the input selection principle. Then, the end effector of the parallel mechanism moves along two different trajectories. Using the particle swarm optimization algorithm, the inverse kinematics solution of each trajectory is obtained, and the velocity and acceleration of each actuator under different trajectories are obtained. Finally, the motion stability of each actuator is evaluated, and the best scheme is selected. The results show that the best input scheme can be selected according to different trajectories, so as to improve the performance of the parallel mechanism. To the authors’ knowledge, no one has done any research on selecting the appropriate input scheme according to the trajectory of the end effector.


---

## Body

## 1. Introduction

After the rapid development of robot technology at the end of the 20th century and the beginning of the 21st century, driven by the market and technology, great progress has been made. Robot products have been widely used in the industrial field [1]. Among them, the application field of single-arm robots is mostly in the factory assembly line, such as painting, auto parts, and installation. However, in many areas of heavy logistics activities, single-arm robots cannot complete such work. For example, in the construction industry, there are many technological processes, and the weight of building components is great. Thus, the single-arm robot is not competent. Dual-arm robot is an inevitable choice. When the dual-arm robot carries large building components, in order to greatly improve the load capacity of the robot, it needs to carry a large component with both arms, thus forming a parallel mechanism. It is a scientific problem to select the optimal input of the redundant branch parallel mechanism [2].At present, scholars at home and abroad have performed a lot of research studies on the input selection of the parallel mechanism and achieved a number of research results. Niu [3] analyzed the effect of the input selection of the 3-PPRR parallel mechanism on its dynamics, motion/force transmissibility, and dexterity performances, and the best combination was obtained. A foldable 2RUS/2RRS parallel mechanism is proposed as a car motion simulation platform in [4]. Additionally, based on the Grassmann geometry, the input selection rationality of the mechanism is analyzed. A novel 4-UPS-RPS spatial 5-degree-of-freedom (DoF) parallel robot mechanism is presented in [5]. The principles that the mechanism can perform three-dimensional rotation and two-dimensional translation are analyzed by using screw theory, the DoF of the mechanism is calculated, and the actuating input selection is discussed. This research provides a theoretical basis for the optimum design and motion planning of the 4-UPS-RPS parallel mechanism. In [6], proper active joints are selected considering the redundancy of the robot, and proper path planning of the robot climbing is performed. Based on the former works and authors’ simulations, several value rules of input vectors in the scissor mechanism are performed in [7]. One of those rules shows that the maximum input force always occurs in the beginning position of lifting. Cao et al. [8] proposed a 3-PPRU parallel mechanism with a completely/partially/nonconstant Jacobian matrix. Based on screw theory and selecting actuating component theory, the reasonability of the actuating input selection is analyzed. By different actuating selections, the Jacobian matrix of the PM can realize completely/partially/be nonconstant. In [9], the type synthesis of the 3R2T 5-DoF parallel mechanism is performed systematically. Using the Lie group of displacements, an input selection method is proposed. In [10], the condition for proper actuator selection of RaPWs is revealed, and one example is used to perform the validation. In combination of the advantages of both parallel mechanisms and compliant mechanisms, a compliant-parallel mechanism with two rotational DoFs is designed to meet the requirement of a lightweight and compact pan-tilt platform in [11]. Finally, a method to determine joint damping of the flexure hinge is presented, which aims at exploring the effect of joint damping on actuator selection and real-time control. A modified mobility equation is presented which addresses the effect of the type of joints on the mobility of parallel manipulators in [12], followed by an illustration of the effect of active joint jam and actuator force loss on mobility. The parallel mechanisms with 2T1R and 2R1T motion modes are synthesized by using the theory of displacement manifold in [13]. The transform configuration of the mechanism between different motion modes is verified feasible by using screw theory. The result shows that the new parallel mechanism has two modes: 2T1R and 2R1T. A 3-DoF parallel mechanism with limbs of embedding structures is a new type of parallel mechanism whose moving platform can continuously rotate for 360°. This special mechanism leads to the nonunique limb division method. A method of reasonably dividing limbs is proposed in [14]. The effects of actuator disposition and redundant actuation on the performance of the 3-DoF tricept parallel mechanism are analyzed in [15]. The performance characteristics of tricept mechanisms with different actuator disposition and redundant actuation are contrastively investigated. As a result, the actuating modes which can simultaneously enhance the kinematic dexterity and stiffness characteristics are presented. A novel 3-PCRNS spherical 3-DoF parallel mechanism is proposed in [16]. Mobility, singularity, and input selection of this mechanism are analyzed via screw theory. The result shows that the circular prismatic pair can be actuated. To obtain a new kind of parallel mechanism with bifurcated motion, the structural constraint, motion mode, and input scheme are analyzed by using screw theory in [17]. The result shows that the parallel mechanism has the ability to perform variable motion modes such as 3T3R, 3T, 3R, 2T1R, and 1T2R. Saharan et al. [18] provided an important theory in selecting the actuator configuration and parameters that result in certain actuation performance such as maximum angles and time-domain characteristics in response to input conditions. The outcome of Cavacanti Santos et al.’s [19] method is the optimal input for the active joints for a given trajectory of the end effector considering the input limitations and different cost functions. Using the proposed method, the performance of a redundant 3-PRRR manipulator is investigated numerically and experimentally. The results demonstrate the capability and versatility of the strategy.To sum up, the research of scholars mainly focuses on the calculation of the DoF and the analysis of the input rationality of the traditional parallel mechanism. However, there is little research on how to select the optimal input scheme according to different trajectories. In this paper, the redundant dual-arm robot is taken as the research object. When the two arms grasp the same object, the robot becomes a parallel mechanism with two branches. The reasonability of the actuating input selection of the robot under different trajectories is analyzed. This study provides a theoretical basis for improving the performance of the dual-arm robot.


## 2. Materials and Methods

### 2.1. Research Object Introduction and Input Rationality Analysis

#### 2.1.1. Research Object Introduction

With the support of National Key R&D Funds, our team independently developed a redundant dual-arm robot. The overall design figure is shown in Figure1.Figure 1
Parallel mechanism with two chains in the initial configuration.The robot is installed on the car body. The structure of each manipulator is the same, and its DoF is 7. The first rotation joint and three parallelogram joints realize the position control of the manipulator. The three rotation joints installed at the end of the third parallelogram structure and the first one can realize the orientation adjustment together. Compared with the traditional series manipulator, it has better load carrying capacity and working space. The manipulator is redundant and has more advantages in obstacle avoidance and flexible operation. There are three main working modes in Figure2.(1)
The robot grabs the plate with one arm and moves it to the designated position to adjust the orientation of the plate, and then the other manipulator carries the manned platform and moves it to the designated position, and then the construction personnel install the plate.(2)
For the plate with small quality or the building components that need to be installed in large quantities, the two arms can grab the plate for installation at the same time.(3)
For the heavy building components, the load carrying capacity of the robot can be greatly improved by carrying the two arms together. This paper mainly studies the third working mode.Figure 2
Three main working modes.
(a)(b)(c)The parallel mechanism with two limbs is shown in Figure1. The surface of the body-mounted manipulator coincides with the horizontal plane, which can be seen as a static platform. The object held by both arms can be regarded as a moving platform. The two platforms are connected by two identical RPPPS limbs. In Figure 1, the one marked with S1i is the ith screw of the first limb, and the one marked with S2i is the ith screw of the second limb. S11 and S21 are in the plane O−Xs0Ys0, which are the rotation joints; S12∼S14 and S22∼S24 are 6 identical parallelogram joints. Each parallelogram is driven by its diagonal prismatic joint. Its structural feature is that the orientation of the end of the parallelogram does not change when it moves; at the end of the arm are two spherical joints with 3 DoFs. Each limb has 7 DoFs. The fixed coordinate frame O−XsYsZs of the first joint on the first limb is established as follows. The Os0 point is located in the center of the first joint. The Ys0-axis passes through the line connecting the center points of the two arms. The Zs0-axis is perpendicular to the horizontal plane. The Xs0-axis is determined according to the right-hand rule. The object’s coordinate frame OT−XTYTZT and world coordinate frame OS−XSYSZS are established.Note: in Figure1, the distance from the S11 joint of the first limb to the direction Zs0 of the car body is the same as that from the S21 joint of the second limb to the direction Zs0, which is drawn to facilitate the display of the initial configuration of the mechanism.


#### 2.1.2. The Establishment of the Twist System

According to Figure1, the twist system of the first limb in the initial configuration is established in the coordinate frame O−Xs0Ys0Zs0.(1)S11=001000,S12=000d120f12,S13=000d130f13,S14=000d140f14,S15=0010−L20,S16=1000L10,S17=010−L10L2.The twist system of the second limb in the initial configuration is as follows:(2)S21=001H00,S22=000d220f22,S23=000d230f23,S24=000d240f24,S25=001H−L20,S26=1000L1−H,S27=010−L10L2.In equation (2), there are six screws which are linearly independent. Its reciprocal screw is as follows:(3)Sr=LrMrNr;PrQrRr.We have(4)S1i∘Sr=0,i=1,2,…,7,where the symbol “∘” denotes the reciprocal product. There is no solution to equation (4), so it can be seen that there is no reciprocal screw of equation (1), and there is no constraint screw on the moving platform.


#### 2.1.3. Input Scheme Research

When two arms grasp a component at the same time, the dual-arm robot can be regarded as a parallel mechanism with two limbs. Selecting a reasonable input scheme is the premise of analyzing the performance of the parallel mechanism. If the number of maximum linear independence vectors of the constraint screw system of the moving platform is equal to 6 after all actuators are locked, it means that the moving platform is constrained by six linear independent screws and loses all DoFs. The input selection combination is reasonable [20]. In this paper, each limb can realize 6-DoF spatial motion, and equations (1) and (2) have no constraint screw. So, the actuating joints can be selected as follows: there are 14 joints in two limbs, and 6 joints are randomly selected to form a matrix or determinant. If the rank of the matrix is 6 or the determinant is not zero, then the other 8 actuating joints are the inputs we need to select. So, there is a matrix:(5)S11S12S13S14S15S16S17S21S22S23S24S25S26S27T.In equation (5), there are C146=3003 combinations of 6 screws randomly selected. Then, from these 3003 combinations, 158 combinations with rank 6 are obtained.All reasonable schemes have been found, but three constraint indicators should be considered:(1)
The actuators should be evenly distributed in each limb(2)
The actuators should be preferentially placed on or near the base(3)
If there are prismatic pairs, they are preferredTherefore, let each arm distribute 4 actuators, and 58 combinations are obtained. Based on this, an evaluation mechanism is established. The closer the joint is to the base, the higher its score. That is, 10 points forS11 and S21, 8 points for S12 and S22, 6 points for S13 and S23, 4 points for S14 and S24, and 2 points for S15, S16, S17 and S25, S26, S27.Based on the evaluation mechanism, the 58 schemes are graded and sorted in Appendix, and 26 schemes with 44 scores or above are selected as the alternative schemes of the following contents.


### 2.2. Inverse Kinematics Analysis Based on Particle Swarm Optimization

The inverse kinematics solution of the robot refers to finding the corresponding angle of each joint by knowing the pose of the robot, which is an essential part of robot control. Because the robot is a redundant structure and the number of inverse kinematics solutions is infinite, the traditional geometric method and analytical method are not suitable. Many scholars use some optimization algorithms such as neurofuzzy methodology to solve such complex problems [21, 22]. The particle swarm optimization (PSO) algorithm has a simple structure and does not need to adjust a large number of parameters. Therefore, this paper takes “the minimum sum of the displacement of the actuators and the pose error of the target point under the adjacent points” as the optimization objective and the angle limit of each joint as the constraint condition and uses the particle swarm optimization algorithm to find the inverse kinematics solution of the robot [23].Before the inverse kinematics solution of PSO, the kinematics model of the manipulator needs to be established. The forward kinematics model of a single arm has been established by precursor [24]. The position of the end effector can be expressed as(6)px=l1c2+c3+c4+mc1,py=l1s2+s3+s4,pz=l1c2+c3+c4+ms1.Gesture can be expressed as(7)R=nxoxaxnyoyaynzozaz,where(8)nx=c6c7c1c5−s1s5−s7c1s2+c5s1,ny=s7c1c5−s1s5+c6c7c1s5+c5s1,nz=c7s6,ox=−c7c1s5+c5s1−c6s7c1c5−s1s5,oz=−s6s7,oy=c7c1s5−c5s1−c6s7c1s5+c5s1,oz=−s6s7,ax=−s6c1c5−s1s5,ay=−s6c1s5−c5s1,az=c6.l1 is the length of the longer side of the parallelogram. θ1,θ5∼θ7 are the angles of the rotation joint. θ2∼θ4 are the angles between the longer side of a parallelogram and the horizontal plane. si and ci represent sinθi and cosθi.


#### 2.2.1. Analysis of the Inverse Position Solution

The mechanism in the parallel mode can be simplified as Figure3. The closed-loop method was used.Figure 3
Simplified diagram of the mechanism in the parallel mode.PointO is the center of the two arm bases. Point A is the base of the manipulator. Point B is the grasping point between the manipulator and the object, and point C is the center of the moving platform. The coordinate system is established at the O, C point. The inverse kinematics problem of the robot is to find each joint angle by knowing the position of the CCxCyCz point and the angle αCβCγC in the base coordinate system.Using the closed-loop method, the closed-loop equation of each arm can be written as(9)OC⟶=OAi⟶+AiBi⟶+BiC⟶,where i = 1 and 2, the length between BiC is l2, and the length between OA is l3. So, we have(10)xC=xBi−xAi+l2cosαc,yC=±l3+yBi−yAi+l2cosβc,zC=zBi−zAi+l2cosγc.Wheni = 1, the sign before l3 is positive, and when i = 2, it is negative. Since the coordinates of the Bi point can be obtained from the above, the rotation angles of the first four joints of each arm can be determined. Four unknowns and three equations have infinite solutions.


#### 2.2.2. Analysis of the Inverse Orientation Solution

The rotation matrix of theBi point relative to the base has been obtained. The rotation matrix of coordinate system Bi relative to coordinate system C is determined by the grasping angle. The rotation matrix of the base coordinate system relative to coordinate system O is also known. Then, the inverse attitude solution can be obtained according to the following formula:(11)RCO=RAORBiARCBi.


#### 2.2.3. Introduction of Particle Swarm Optimization

The pose includes position and orientation. Due to the difference of the position and orientation in the order of magnitude, the penalty factor alpha is introduced. The objective function is as follows:(12)minfi=Pxni−pxni2+Pyni−pyni2+Pzni−pzni2+alphaRn22i−rn22i2+Rn32i−rn32i2+Rn33i−rn33i2+alphaθn1i−φn12+θn2i−φn22+θn3i−φn32+θn4i−φn42+θn5i−φn52+θn6i−φn62+θn7i−φn72s.t.fi<e−5,−π2<θn1<π2,0<θn2<2π3,−2π3<θn3<0,0<θn4<2π3,−π3<θn5<π3,−π<θn6<π,−π2<θn7<π3,where fi is the objective function, which is composed of three parts. The first part ensures the minimum position error. The second part ensures the minimum orientation error. The third part ensures the continuity of each joint motion. n=1,2 represents the first arm and the second arm, respectively. pxni, pyni, pzni, rn22i, rn32i, and rn33i are the position and orientation of the ith point expected to reach, respectively. θn1i∼θn7i are the angles of the 14 joints at iteration k. i=1,…,N is the number of population particle swarms. φn1∼φn7 are the initial angles of the 14 joints. The penalty factor alpha = 103.In this paper, the PSO is used to solve the above objective function. Firstly, a group of random solutions satisfying the constraint conditions is defined, and the corresponding solution satisfying the objective function is determined by comparing the current optimal value of each group of solutions in an iteration with the global optimal value of all particles. The update of particle velocity and position is determined by the following equation:(13)vidk+1=wvidk+c1r1pidk−xidk+c2r2pgdk−xidk,xidk+1=xidk+vidk+1,where r1 and r2 are random numbers within the range [0, 1]. c1 and c2 are acceleration coefficients. Factors c1 and c2 control the range of particle motion in an iteration. In most cases, they are both identical. Inertia weight w=0.7298. pgdk is the best position discovered by any of the particles at iteration k. pidk is its personal best position. vidk and xidk are the flight speed and position of the ith particle at iteration k, respectively. The pseudo-code of PSO is given in Algorithm 1.Algorithm 1:Pseudo-code of PSO.
Compute initial velocity limitsInitialize positionsInitialize velocityEvaluate fitnesses to findpbest and gbestWhile termination criteria not metFor each particle doModify the velocityIf velocity beyond boundsAssign that velocity limit as new velocityChange positionIf position beyond boundsAssign new position as that boundaryEvaluate fitness and computepbest`End forUpdategbestEnd whileSuppose that theB coordinate system and C coordinate system are parallel. The A coordinate system is parallel to the O coordinate system. l2 is set to 200 mm, and l3 is set to 250 mm. Using the algorithm, an arc trajectory is planned arbitrarily in the plane of Z = 0. The planned trajectory and the solution results are shown in Figure 4. It can be seen from it that the solution results of the algorithm are very accurate, and the error between the solution and the planning trajectory is 10−11 mm orders of magnitude, which meets the requirements of practical engineering. In addition, the result shows that the algorithm has the following advantages: small amount of calculation and each iteration only needs 500 particles; the results are continuous and smooth and can be applied to practical engineering. The program has been verified in MATLAB.Figure 4
Planned trajectory and trajectory of the solution.


## 2.1. Research Object Introduction and Input Rationality Analysis

### 2.1.1. Research Object Introduction

With the support of National Key R&D Funds, our team independently developed a redundant dual-arm robot. The overall design figure is shown in Figure1.Figure 1
Parallel mechanism with two chains in the initial configuration.The robot is installed on the car body. The structure of each manipulator is the same, and its DoF is 7. The first rotation joint and three parallelogram joints realize the position control of the manipulator. The three rotation joints installed at the end of the third parallelogram structure and the first one can realize the orientation adjustment together. Compared with the traditional series manipulator, it has better load carrying capacity and working space. The manipulator is redundant and has more advantages in obstacle avoidance and flexible operation. There are three main working modes in Figure2.(1)
The robot grabs the plate with one arm and moves it to the designated position to adjust the orientation of the plate, and then the other manipulator carries the manned platform and moves it to the designated position, and then the construction personnel install the plate.(2)
For the plate with small quality or the building components that need to be installed in large quantities, the two arms can grab the plate for installation at the same time.(3)
For the heavy building components, the load carrying capacity of the robot can be greatly improved by carrying the two arms together. This paper mainly studies the third working mode.Figure 2
Three main working modes.
(a)(b)(c)The parallel mechanism with two limbs is shown in Figure1. The surface of the body-mounted manipulator coincides with the horizontal plane, which can be seen as a static platform. The object held by both arms can be regarded as a moving platform. The two platforms are connected by two identical RPPPS limbs. In Figure 1, the one marked with S1i is the ith screw of the first limb, and the one marked with S2i is the ith screw of the second limb. S11 and S21 are in the plane O−Xs0Ys0, which are the rotation joints; S12∼S14 and S22∼S24 are 6 identical parallelogram joints. Each parallelogram is driven by its diagonal prismatic joint. Its structural feature is that the orientation of the end of the parallelogram does not change when it moves; at the end of the arm are two spherical joints with 3 DoFs. Each limb has 7 DoFs. The fixed coordinate frame O−XsYsZs of the first joint on the first limb is established as follows. The Os0 point is located in the center of the first joint. The Ys0-axis passes through the line connecting the center points of the two arms. The Zs0-axis is perpendicular to the horizontal plane. The Xs0-axis is determined according to the right-hand rule. The object’s coordinate frame OT−XTYTZT and world coordinate frame OS−XSYSZS are established.Note: in Figure1, the distance from the S11 joint of the first limb to the direction Zs0 of the car body is the same as that from the S21 joint of the second limb to the direction Zs0, which is drawn to facilitate the display of the initial configuration of the mechanism.


### 2.1.2. The Establishment of the Twist System

According to Figure1, the twist system of the first limb in the initial configuration is established in the coordinate frame O−Xs0Ys0Zs0.(1)S11=001000,S12=000d120f12,S13=000d130f13,S14=000d140f14,S15=0010−L20,S16=1000L10,S17=010−L10L2.The twist system of the second limb in the initial configuration is as follows:(2)S21=001H00,S22=000d220f22,S23=000d230f23,S24=000d240f24,S25=001H−L20,S26=1000L1−H,S27=010−L10L2.In equation (2), there are six screws which are linearly independent. Its reciprocal screw is as follows:(3)Sr=LrMrNr;PrQrRr.We have(4)S1i∘Sr=0,i=1,2,…,7,where the symbol “∘” denotes the reciprocal product. There is no solution to equation (4), so it can be seen that there is no reciprocal screw of equation (1), and there is no constraint screw on the moving platform.


### 2.1.3. Input Scheme Research

When two arms grasp a component at the same time, the dual-arm robot can be regarded as a parallel mechanism with two limbs. Selecting a reasonable input scheme is the premise of analyzing the performance of the parallel mechanism. If the number of maximum linear independence vectors of the constraint screw system of the moving platform is equal to 6 after all actuators are locked, it means that the moving platform is constrained by six linear independent screws and loses all DoFs. The input selection combination is reasonable [20]. In this paper, each limb can realize 6-DoF spatial motion, and equations (1) and (2) have no constraint screw. So, the actuating joints can be selected as follows: there are 14 joints in two limbs, and 6 joints are randomly selected to form a matrix or determinant. If the rank of the matrix is 6 or the determinant is not zero, then the other 8 actuating joints are the inputs we need to select. So, there is a matrix:(5)S11S12S13S14S15S16S17S21S22S23S24S25S26S27T.In equation (5), there are C146=3003 combinations of 6 screws randomly selected. Then, from these 3003 combinations, 158 combinations with rank 6 are obtained.All reasonable schemes have been found, but three constraint indicators should be considered:(1)
The actuators should be evenly distributed in each limb(2)
The actuators should be preferentially placed on or near the base(3)
If there are prismatic pairs, they are preferredTherefore, let each arm distribute 4 actuators, and 58 combinations are obtained. Based on this, an evaluation mechanism is established. The closer the joint is to the base, the higher its score. That is, 10 points forS11 and S21, 8 points for S12 and S22, 6 points for S13 and S23, 4 points for S14 and S24, and 2 points for S15, S16, S17 and S25, S26, S27.Based on the evaluation mechanism, the 58 schemes are graded and sorted in Appendix, and 26 schemes with 44 scores or above are selected as the alternative schemes of the following contents.


## 2.1.1. Research Object Introduction

With the support of National Key R&D Funds, our team independently developed a redundant dual-arm robot. The overall design figure is shown in Figure1.Figure 1
Parallel mechanism with two chains in the initial configuration.The robot is installed on the car body. The structure of each manipulator is the same, and its DoF is 7. The first rotation joint and three parallelogram joints realize the position control of the manipulator. The three rotation joints installed at the end of the third parallelogram structure and the first one can realize the orientation adjustment together. Compared with the traditional series manipulator, it has better load carrying capacity and working space. The manipulator is redundant and has more advantages in obstacle avoidance and flexible operation. There are three main working modes in Figure2.(1)
The robot grabs the plate with one arm and moves it to the designated position to adjust the orientation of the plate, and then the other manipulator carries the manned platform and moves it to the designated position, and then the construction personnel install the plate.(2)
For the plate with small quality or the building components that need to be installed in large quantities, the two arms can grab the plate for installation at the same time.(3)
For the heavy building components, the load carrying capacity of the robot can be greatly improved by carrying the two arms together. This paper mainly studies the third working mode.Figure 2
Three main working modes.
(a)(b)(c)The parallel mechanism with two limbs is shown in Figure1. The surface of the body-mounted manipulator coincides with the horizontal plane, which can be seen as a static platform. The object held by both arms can be regarded as a moving platform. The two platforms are connected by two identical RPPPS limbs. In Figure 1, the one marked with S1i is the ith screw of the first limb, and the one marked with S2i is the ith screw of the second limb. S11 and S21 are in the plane O−Xs0Ys0, which are the rotation joints; S12∼S14 and S22∼S24 are 6 identical parallelogram joints. Each parallelogram is driven by its diagonal prismatic joint. Its structural feature is that the orientation of the end of the parallelogram does not change when it moves; at the end of the arm are two spherical joints with 3 DoFs. Each limb has 7 DoFs. The fixed coordinate frame O−XsYsZs of the first joint on the first limb is established as follows. The Os0 point is located in the center of the first joint. The Ys0-axis passes through the line connecting the center points of the two arms. The Zs0-axis is perpendicular to the horizontal plane. The Xs0-axis is determined according to the right-hand rule. The object’s coordinate frame OT−XTYTZT and world coordinate frame OS−XSYSZS are established.Note: in Figure1, the distance from the S11 joint of the first limb to the direction Zs0 of the car body is the same as that from the S21 joint of the second limb to the direction Zs0, which is drawn to facilitate the display of the initial configuration of the mechanism.


## 2.1.2. The Establishment of the Twist System

According to Figure1, the twist system of the first limb in the initial configuration is established in the coordinate frame O−Xs0Ys0Zs0.(1)S11=001000,S12=000d120f12,S13=000d130f13,S14=000d140f14,S15=0010−L20,S16=1000L10,S17=010−L10L2.The twist system of the second limb in the initial configuration is as follows:(2)S21=001H00,S22=000d220f22,S23=000d230f23,S24=000d240f24,S25=001H−L20,S26=1000L1−H,S27=010−L10L2.In equation (2), there are six screws which are linearly independent. Its reciprocal screw is as follows:(3)Sr=LrMrNr;PrQrRr.We have(4)S1i∘Sr=0,i=1,2,…,7,where the symbol “∘” denotes the reciprocal product. There is no solution to equation (4), so it can be seen that there is no reciprocal screw of equation (1), and there is no constraint screw on the moving platform.


## 2.1.3. Input Scheme Research

When two arms grasp a component at the same time, the dual-arm robot can be regarded as a parallel mechanism with two limbs. Selecting a reasonable input scheme is the premise of analyzing the performance of the parallel mechanism. If the number of maximum linear independence vectors of the constraint screw system of the moving platform is equal to 6 after all actuators are locked, it means that the moving platform is constrained by six linear independent screws and loses all DoFs. The input selection combination is reasonable [20]. In this paper, each limb can realize 6-DoF spatial motion, and equations (1) and (2) have no constraint screw. So, the actuating joints can be selected as follows: there are 14 joints in two limbs, and 6 joints are randomly selected to form a matrix or determinant. If the rank of the matrix is 6 or the determinant is not zero, then the other 8 actuating joints are the inputs we need to select. So, there is a matrix:(5)S11S12S13S14S15S16S17S21S22S23S24S25S26S27T.In equation (5), there are C146=3003 combinations of 6 screws randomly selected. Then, from these 3003 combinations, 158 combinations with rank 6 are obtained.All reasonable schemes have been found, but three constraint indicators should be considered:(1)
The actuators should be evenly distributed in each limb(2)
The actuators should be preferentially placed on or near the base(3)
If there are prismatic pairs, they are preferredTherefore, let each arm distribute 4 actuators, and 58 combinations are obtained. Based on this, an evaluation mechanism is established. The closer the joint is to the base, the higher its score. That is, 10 points forS11 and S21, 8 points for S12 and S22, 6 points for S13 and S23, 4 points for S14 and S24, and 2 points for S15, S16, S17 and S25, S26, S27.Based on the evaluation mechanism, the 58 schemes are graded and sorted in Appendix, and 26 schemes with 44 scores or above are selected as the alternative schemes of the following contents.


## 2.2. Inverse Kinematics Analysis Based on Particle Swarm Optimization

The inverse kinematics solution of the robot refers to finding the corresponding angle of each joint by knowing the pose of the robot, which is an essential part of robot control. Because the robot is a redundant structure and the number of inverse kinematics solutions is infinite, the traditional geometric method and analytical method are not suitable. Many scholars use some optimization algorithms such as neurofuzzy methodology to solve such complex problems [21, 22]. The particle swarm optimization (PSO) algorithm has a simple structure and does not need to adjust a large number of parameters. Therefore, this paper takes “the minimum sum of the displacement of the actuators and the pose error of the target point under the adjacent points” as the optimization objective and the angle limit of each joint as the constraint condition and uses the particle swarm optimization algorithm to find the inverse kinematics solution of the robot [23].Before the inverse kinematics solution of PSO, the kinematics model of the manipulator needs to be established. The forward kinematics model of a single arm has been established by precursor [24]. The position of the end effector can be expressed as(6)px=l1c2+c3+c4+mc1,py=l1s2+s3+s4,pz=l1c2+c3+c4+ms1.Gesture can be expressed as(7)R=nxoxaxnyoyaynzozaz,where(8)nx=c6c7c1c5−s1s5−s7c1s2+c5s1,ny=s7c1c5−s1s5+c6c7c1s5+c5s1,nz=c7s6,ox=−c7c1s5+c5s1−c6s7c1c5−s1s5,oz=−s6s7,oy=c7c1s5−c5s1−c6s7c1s5+c5s1,oz=−s6s7,ax=−s6c1c5−s1s5,ay=−s6c1s5−c5s1,az=c6.l1 is the length of the longer side of the parallelogram. θ1,θ5∼θ7 are the angles of the rotation joint. θ2∼θ4 are the angles between the longer side of a parallelogram and the horizontal plane. si and ci represent sinθi and cosθi.


### 2.2.1. Analysis of the Inverse Position Solution

The mechanism in the parallel mode can be simplified as Figure3. The closed-loop method was used.Figure 3
Simplified diagram of the mechanism in the parallel mode.PointO is the center of the two arm bases. Point A is the base of the manipulator. Point B is the grasping point between the manipulator and the object, and point C is the center of the moving platform. The coordinate system is established at the O, C point. The inverse kinematics problem of the robot is to find each joint angle by knowing the position of the CCxCyCz point and the angle αCβCγC in the base coordinate system.Using the closed-loop method, the closed-loop equation of each arm can be written as(9)OC⟶=OAi⟶+AiBi⟶+BiC⟶,where i = 1 and 2, the length between BiC is l2, and the length between OA is l3. So, we have(10)xC=xBi−xAi+l2cosαc,yC=±l3+yBi−yAi+l2cosβc,zC=zBi−zAi+l2cosγc.Wheni = 1, the sign before l3 is positive, and when i = 2, it is negative. Since the coordinates of the Bi point can be obtained from the above, the rotation angles of the first four joints of each arm can be determined. Four unknowns and three equations have infinite solutions.


### 2.2.2. Analysis of the Inverse Orientation Solution

The rotation matrix of theBi point relative to the base has been obtained. The rotation matrix of coordinate system Bi relative to coordinate system C is determined by the grasping angle. The rotation matrix of the base coordinate system relative to coordinate system O is also known. Then, the inverse attitude solution can be obtained according to the following formula:(11)RCO=RAORBiARCBi.


### 2.2.3. Introduction of Particle Swarm Optimization

The pose includes position and orientation. Due to the difference of the position and orientation in the order of magnitude, the penalty factor alpha is introduced. The objective function is as follows:(12)minfi=Pxni−pxni2+Pyni−pyni2+Pzni−pzni2+alphaRn22i−rn22i2+Rn32i−rn32i2+Rn33i−rn33i2+alphaθn1i−φn12+θn2i−φn22+θn3i−φn32+θn4i−φn42+θn5i−φn52+θn6i−φn62+θn7i−φn72s.t.fi<e−5,−π2<θn1<π2,0<θn2<2π3,−2π3<θn3<0,0<θn4<2π3,−π3<θn5<π3,−π<θn6<π,−π2<θn7<π3,where fi is the objective function, which is composed of three parts. The first part ensures the minimum position error. The second part ensures the minimum orientation error. The third part ensures the continuity of each joint motion. n=1,2 represents the first arm and the second arm, respectively. pxni, pyni, pzni, rn22i, rn32i, and rn33i are the position and orientation of the ith point expected to reach, respectively. θn1i∼θn7i are the angles of the 14 joints at iteration k. i=1,…,N is the number of population particle swarms. φn1∼φn7 are the initial angles of the 14 joints. The penalty factor alpha = 103.In this paper, the PSO is used to solve the above objective function. Firstly, a group of random solutions satisfying the constraint conditions is defined, and the corresponding solution satisfying the objective function is determined by comparing the current optimal value of each group of solutions in an iteration with the global optimal value of all particles. The update of particle velocity and position is determined by the following equation:(13)vidk+1=wvidk+c1r1pidk−xidk+c2r2pgdk−xidk,xidk+1=xidk+vidk+1,where r1 and r2 are random numbers within the range [0, 1]. c1 and c2 are acceleration coefficients. Factors c1 and c2 control the range of particle motion in an iteration. In most cases, they are both identical. Inertia weight w=0.7298. pgdk is the best position discovered by any of the particles at iteration k. pidk is its personal best position. vidk and xidk are the flight speed and position of the ith particle at iteration k, respectively. The pseudo-code of PSO is given in Algorithm 1.Algorithm 1:Pseudo-code of PSO.
Compute initial velocity limitsInitialize positionsInitialize velocityEvaluate fitnesses to findpbest and gbestWhile termination criteria not metFor each particle doModify the velocityIf velocity beyond boundsAssign that velocity limit as new velocityChange positionIf position beyond boundsAssign new position as that boundaryEvaluate fitness and computepbest`End forUpdategbestEnd whileSuppose that theB coordinate system and C coordinate system are parallel. The A coordinate system is parallel to the O coordinate system. l2 is set to 200 mm, and l3 is set to 250 mm. Using the algorithm, an arc trajectory is planned arbitrarily in the plane of Z = 0. The planned trajectory and the solution results are shown in Figure 4. It can be seen from it that the solution results of the algorithm are very accurate, and the error between the solution and the planning trajectory is 10−11 mm orders of magnitude, which meets the requirements of practical engineering. In addition, the result shows that the algorithm has the following advantages: small amount of calculation and each iteration only needs 500 particles; the results are continuous and smooth and can be applied to practical engineering. The program has been verified in MATLAB.Figure 4
Planned trajectory and trajectory of the solution.


## 2.2.1. Analysis of the Inverse Position Solution

The mechanism in the parallel mode can be simplified as Figure3. The closed-loop method was used.Figure 3
Simplified diagram of the mechanism in the parallel mode.PointO is the center of the two arm bases. Point A is the base of the manipulator. Point B is the grasping point between the manipulator and the object, and point C is the center of the moving platform. The coordinate system is established at the O, C point. The inverse kinematics problem of the robot is to find each joint angle by knowing the position of the CCxCyCz point and the angle αCβCγC in the base coordinate system.Using the closed-loop method, the closed-loop equation of each arm can be written as(9)OC⟶=OAi⟶+AiBi⟶+BiC⟶,where i = 1 and 2, the length between BiC is l2, and the length between OA is l3. So, we have(10)xC=xBi−xAi+l2cosαc,yC=±l3+yBi−yAi+l2cosβc,zC=zBi−zAi+l2cosγc.Wheni = 1, the sign before l3 is positive, and when i = 2, it is negative. Since the coordinates of the Bi point can be obtained from the above, the rotation angles of the first four joints of each arm can be determined. Four unknowns and three equations have infinite solutions.


## 2.2.2. Analysis of the Inverse Orientation Solution

The rotation matrix of theBi point relative to the base has been obtained. The rotation matrix of coordinate system Bi relative to coordinate system C is determined by the grasping angle. The rotation matrix of the base coordinate system relative to coordinate system O is also known. Then, the inverse attitude solution can be obtained according to the following formula:(11)RCO=RAORBiARCBi.


## 2.2.3. Introduction of Particle Swarm Optimization

The pose includes position and orientation. Due to the difference of the position and orientation in the order of magnitude, the penalty factor alpha is introduced. The objective function is as follows:(12)minfi=Pxni−pxni2+Pyni−pyni2+Pzni−pzni2+alphaRn22i−rn22i2+Rn32i−rn32i2+Rn33i−rn33i2+alphaθn1i−φn12+θn2i−φn22+θn3i−φn32+θn4i−φn42+θn5i−φn52+θn6i−φn62+θn7i−φn72s.t.fi<e−5,−π2<θn1<π2,0<θn2<2π3,−2π3<θn3<0,0<θn4<2π3,−π3<θn5<π3,−π<θn6<π,−π2<θn7<π3,where fi is the objective function, which is composed of three parts. The first part ensures the minimum position error. The second part ensures the minimum orientation error. The third part ensures the continuity of each joint motion. n=1,2 represents the first arm and the second arm, respectively. pxni, pyni, pzni, rn22i, rn32i, and rn33i are the position and orientation of the ith point expected to reach, respectively. θn1i∼θn7i are the angles of the 14 joints at iteration k. i=1,…,N is the number of population particle swarms. φn1∼φn7 are the initial angles of the 14 joints. The penalty factor alpha = 103.In this paper, the PSO is used to solve the above objective function. Firstly, a group of random solutions satisfying the constraint conditions is defined, and the corresponding solution satisfying the objective function is determined by comparing the current optimal value of each group of solutions in an iteration with the global optimal value of all particles. The update of particle velocity and position is determined by the following equation:(13)vidk+1=wvidk+c1r1pidk−xidk+c2r2pgdk−xidk,xidk+1=xidk+vidk+1,where r1 and r2 are random numbers within the range [0, 1]. c1 and c2 are acceleration coefficients. Factors c1 and c2 control the range of particle motion in an iteration. In most cases, they are both identical. Inertia weight w=0.7298. pgdk is the best position discovered by any of the particles at iteration k. pidk is its personal best position. vidk and xidk are the flight speed and position of the ith particle at iteration k, respectively. The pseudo-code of PSO is given in Algorithm 1.Algorithm 1:Pseudo-code of PSO.
Compute initial velocity limitsInitialize positionsInitialize velocityEvaluate fitnesses to findpbest and gbestWhile termination criteria not metFor each particle doModify the velocityIf velocity beyond boundsAssign that velocity limit as new velocityChange positionIf position beyond boundsAssign new position as that boundaryEvaluate fitness and computepbest`End forUpdategbestEnd whileSuppose that theB coordinate system and C coordinate system are parallel. The A coordinate system is parallel to the O coordinate system. l2 is set to 200 mm, and l3 is set to 250 mm. Using the algorithm, an arc trajectory is planned arbitrarily in the plane of Z = 0. The planned trajectory and the solution results are shown in Figure 4. It can be seen from it that the solution results of the algorithm are very accurate, and the error between the solution and the planning trajectory is 10−11 mm orders of magnitude, which meets the requirements of practical engineering. In addition, the result shows that the algorithm has the following advantages: small amount of calculation and each iteration only needs 500 particles; the results are continuous and smooth and can be applied to practical engineering. The program has been verified in MATLAB.Figure 4
Planned trajectory and trajectory of the solution.


## 3. Results and Discussion

### 3.1. Optimal Input Scheme

#### 3.1.1. Simulation Experiment

The problem of inverse kinematics has been solved above. In this section, the angular velocity and angular acceleration of the joint are obtained according to the inverse kinematics solution. Two arc trajectories are set as shown in Figure5. The trajectories are in the plane of Z = 0, 1000, with (0, 400) as the center and (3000, 400) as the starting point (unit: mm). The end effector keeps a fixed orientation and rotates 30 degrees counterclockwise. Each trajectory consists of 91 evenly distributed points, and the end effector passes through each point in the trajectory at a constant speed. The inverse kinematics solution of each point in the trajectory is obtained. Time, angular velocity, and angular acceleration can be obtained by the following equation:(14)ti=Pxi+1−Pxi2+Pyi+1−Pyi2+Pzi+1−Pzi2v,ωi,j=θi+1,j−θi,jti,wherej=1,…,7,ai,j=dωi,jdt,where ti is the time from the i+1th point to the ith point, ωi,j and ai,j are the angular velocity and angular acceleration of the ith joint in this period of time, and v is the assumed velocity of the end effector. v=0.1m/s. The meaning of the other symbols is the same as that of equation (4).Figure 5
The points of the trajectory.According to the above, the angular velocity curve is obtained, and the angular acceleration curve is obtained by deriving the angular velocity curve.Note: according to the actual engineering needs, the operating object of the dual-arm robot is large load and large size, and the assuming velocity is small (0.1m/s), so the value of the image is small. Because the orientation is set to be constant, the three joints at the end of the arm change very little.In Figures6–9, the first row shows the angular velocity of each joint in the manipulator, and the second row shows the angular acceleration.Figure 6
The angular velocity and angular acceleration curves of the first manipulator whenZ = 0. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 7
The angular velocity and angular acceleration curves of the second manipulator whenZ = 0. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 8
The angular velocity and angular acceleration curves of the first manipulator whenZ = 1000. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 9
The angular velocity and angular acceleration curves of the second manipulator whenZ = 1000. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)


#### 3.1.2. Establishment of the Evaluation Index

The total varianceQ of each input scheme is obtained by calculating the sum of variances of each angular acceleration curve. The smaller Q is, the smaller the fluctuation of the speed is and the better the performance of the mechanical equipment is. The one with minimum Q is selected as the best scheme.(15)S2=∑X−μ2n−1,Q=∑S2,where S2 is the sample variance, X is the variable, μ is the sample mean value, n is the number of samples, and Q is the total variance of an input scheme.The results are shown in Table1, which indicates that the best input scheme can be selected according to different trajectories, so as to improve the performance of the parallel mechanism.Table 1
The best schemes.
Trajectories (mm)SchemesZ = 0S12S13S14S17S21S22S23S26Z = 1000S12S13S14S16S21S22S23S27


## 3.1. Optimal Input Scheme

### 3.1.1. Simulation Experiment

The problem of inverse kinematics has been solved above. In this section, the angular velocity and angular acceleration of the joint are obtained according to the inverse kinematics solution. Two arc trajectories are set as shown in Figure5. The trajectories are in the plane of Z = 0, 1000, with (0, 400) as the center and (3000, 400) as the starting point (unit: mm). The end effector keeps a fixed orientation and rotates 30 degrees counterclockwise. Each trajectory consists of 91 evenly distributed points, and the end effector passes through each point in the trajectory at a constant speed. The inverse kinematics solution of each point in the trajectory is obtained. Time, angular velocity, and angular acceleration can be obtained by the following equation:(14)ti=Pxi+1−Pxi2+Pyi+1−Pyi2+Pzi+1−Pzi2v,ωi,j=θi+1,j−θi,jti,wherej=1,…,7,ai,j=dωi,jdt,where ti is the time from the i+1th point to the ith point, ωi,j and ai,j are the angular velocity and angular acceleration of the ith joint in this period of time, and v is the assumed velocity of the end effector. v=0.1m/s. The meaning of the other symbols is the same as that of equation (4).Figure 5
The points of the trajectory.According to the above, the angular velocity curve is obtained, and the angular acceleration curve is obtained by deriving the angular velocity curve.Note: according to the actual engineering needs, the operating object of the dual-arm robot is large load and large size, and the assuming velocity is small (0.1m/s), so the value of the image is small. Because the orientation is set to be constant, the three joints at the end of the arm change very little.In Figures6–9, the first row shows the angular velocity of each joint in the manipulator, and the second row shows the angular acceleration.Figure 6
The angular velocity and angular acceleration curves of the first manipulator whenZ = 0. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 7
The angular velocity and angular acceleration curves of the second manipulator whenZ = 0. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 8
The angular velocity and angular acceleration curves of the first manipulator whenZ = 1000. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 9
The angular velocity and angular acceleration curves of the second manipulator whenZ = 1000. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)


### 3.1.2. Establishment of the Evaluation Index

The total varianceQ of each input scheme is obtained by calculating the sum of variances of each angular acceleration curve. The smaller Q is, the smaller the fluctuation of the speed is and the better the performance of the mechanical equipment is. The one with minimum Q is selected as the best scheme.(15)S2=∑X−μ2n−1,Q=∑S2,where S2 is the sample variance, X is the variable, μ is the sample mean value, n is the number of samples, and Q is the total variance of an input scheme.The results are shown in Table1, which indicates that the best input scheme can be selected according to different trajectories, so as to improve the performance of the parallel mechanism.Table 1
The best schemes.
Trajectories (mm)SchemesZ = 0S12S13S14S17S21S22S23S26Z = 1000S12S13S14S16S21S22S23S27


## 3.1.1. Simulation Experiment

The problem of inverse kinematics has been solved above. In this section, the angular velocity and angular acceleration of the joint are obtained according to the inverse kinematics solution. Two arc trajectories are set as shown in Figure5. The trajectories are in the plane of Z = 0, 1000, with (0, 400) as the center and (3000, 400) as the starting point (unit: mm). The end effector keeps a fixed orientation and rotates 30 degrees counterclockwise. Each trajectory consists of 91 evenly distributed points, and the end effector passes through each point in the trajectory at a constant speed. The inverse kinematics solution of each point in the trajectory is obtained. Time, angular velocity, and angular acceleration can be obtained by the following equation:(14)ti=Pxi+1−Pxi2+Pyi+1−Pyi2+Pzi+1−Pzi2v,ωi,j=θi+1,j−θi,jti,wherej=1,…,7,ai,j=dωi,jdt,where ti is the time from the i+1th point to the ith point, ωi,j and ai,j are the angular velocity and angular acceleration of the ith joint in this period of time, and v is the assumed velocity of the end effector. v=0.1m/s. The meaning of the other symbols is the same as that of equation (4).Figure 5
The points of the trajectory.According to the above, the angular velocity curve is obtained, and the angular acceleration curve is obtained by deriving the angular velocity curve.Note: according to the actual engineering needs, the operating object of the dual-arm robot is large load and large size, and the assuming velocity is small (0.1m/s), so the value of the image is small. Because the orientation is set to be constant, the three joints at the end of the arm change very little.In Figures6–9, the first row shows the angular velocity of each joint in the manipulator, and the second row shows the angular acceleration.Figure 6
The angular velocity and angular acceleration curves of the first manipulator whenZ = 0. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 7
The angular velocity and angular acceleration curves of the second manipulator whenZ = 0. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 8
The angular velocity and angular acceleration curves of the first manipulator whenZ = 1000. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)Figure 9
The angular velocity and angular acceleration curves of the second manipulator whenZ = 1000. vel1–vel7 represent the velocity of joints 1–7, respectively. acc1–acc7 represent the acceleration of joints 1–7, respectively.
(a)(b)(c)(d)


## 3.1.2. Establishment of the Evaluation Index

The total varianceQ of each input scheme is obtained by calculating the sum of variances of each angular acceleration curve. The smaller Q is, the smaller the fluctuation of the speed is and the better the performance of the mechanical equipment is. The one with minimum Q is selected as the best scheme.(15)S2=∑X−μ2n−1,Q=∑S2,where S2 is the sample variance, X is the variable, μ is the sample mean value, n is the number of samples, and Q is the total variance of an input scheme.The results are shown in Table1, which indicates that the best input scheme can be selected according to different trajectories, so as to improve the performance of the parallel mechanism.Table 1
The best schemes.
Trajectories (mm)SchemesZ = 0S12S13S14S17S21S22S23S26Z = 1000S12S13S14S16S21S22S23S27


## 4. Conclusions

This paper solves the problem of actuating the input selection of the dual-arm robot under different trajectories when the robot is holding the same object with both arms. Firstly, a variety of reasonable actuating input schemes are selected based on the screw theory, and the schemes are graded according to the evaluation mechanism. Then, the inverse kinematics solution of the arms is obtained based on the particle swarm optimization, and the angular velocity and angular acceleration of each joint are calculated. According to the principle of minimum angular acceleration variance, the best scheme is selected. The results show that there are 158 kinds of reasonable input schemes, of which 58 are in accordance with the input selection principle. This research can select the optimal input scheme according to different trajectories of the dual-arm robot. In the next stage, the practical problems will be considered, such as the imperfections of the mechanism [25].



---

*Source: 8784361-2021-08-10.xml*