Abstract
The 7R 6-degree-of-freedom robots with hollow non-spherical wrist have been proven more suitable to spray painting. However, the inverse kinematics of this robot is still imperfect due to the coupling between position and orientation of the end-effector. In this article, a reliable numerical iterative algorithm for the inverse kinematics of a 7R 6-degree-of-freedom robot is proposed. Based on the geometry of the robot, the inverse kinematics is converted into a one-dimensional iterative research problem. Since the Jacobian matrix is not utilized, the proposed algorithm possesses good convergence, even for singular configurations. Moreover, the multiple-solution problem in the inverse kinematics is also discussed. By introducing three robot configuration indicators which are prespecified by a user, the correct solution could be chosen from all the possible solutions. In order to verify the accuracy and efficiency of the proposed algorithm, several simulations are implemented on a practical 7R 6-degree-of-freedom painting robot. The result shows that the proposed algorithm is more advantageous for a continuous trajectory.
Introduction
In robotics, inverse kinematics is one of the most fundamental research areas. It is necessary for structure design, trajectory planning, and dynamic analysis of robots. There are mainly two types of inverse kinematic techniques, namely, analytical methods and numerical methods. Analytical solutions exist only for some special robots, including robot manipulators with three adjacent axes intersecting at one point or parallel to each other.
1
As an example, the robot with a spherical wrist is widely used to ensure the existence of analytical solution. However, in some industrial applications such as painting, the 7R 6-degree-of-freedom (DOF) robot with hollow non-spherical wrist has been proved to be advantageous due to wider range of motion of the wrist. As shown in Figure 1, the wrist of 7R 6-DOF robot has four revolute joints, the second and third of which are coupled with the relation:

Prototype of a 7R 6-DOF painting robot.

Configuration of the 7R 6-DOF robot.
Because of the non-spherical wrist, the analytical solution of the 7R 6-DOF robot is non-existent. In order to get inverse kinematics of the robots with non-spherical wrist, Tsai and Morgan 2 proposed a higher dimensional approach with eight second-degree equations. Complementing this approach, Raghavan and Roth 3 used dialytic elimination to derive a 16-degree polynomial. Manocha and Canny 4 proposed symbolic preprocessing and matrix computations to convert the inverse kinematics to an eigenvalue problem. In recent years, literatures5–8 have studied the inverse kinematics of general 6R robots. However, the problem is that these methods are limited to 6R robots. For the 7R 6-DOF robot, Wu et al. 9 proposed a two-step method: the approximate analytical solutions are first derived through solving the 7R robot with spherical wrist by introducing a virtual wrist center, and the Levenberg–Marquardt (LM) method is used to calculate the exact solutions. This is an interesting approach, but a complex polynomial system needs to be solved in the first step which is time consuming. In some references, the methods based on heuristic search techniques such as neural network solution,10,11 genetic algorithms,12,13 and simulated annealing 14 are developed for the solution of inverse kinematics problem. These methods converse kinematics problem into an equivalent minimization problem and generally suffer from low accuracy and are time consuming.
In the absence of analytical solution, the numerical iterative techniques are potential ways for the inverse kinematics. Several types of numerical iterative techniques have been developed. The first type, such as Newton–Raphson approach
15
and the damped least-squares (DLS) approach,16,17 is based on the inverse Jacobian matrix. The main drawback is that these methods fail to converge when singularity exists and are sensitive to the initial solution. The second type, such as the steepest decent approach,
18
employs the gradient-based non-linear algorithm for solving an equivalent minimization problem. Because this method does not use Jacobian matrix, the singularity problem is avoided. However, the high non-linearity of the kinematic equations makes the gradient vector of the objective function computational time consuming. As an alternative approach, Pashkevich
19
converted the inverse kinematics of robots with offset and reduced wrist into an efficient one-dimensional search problem. This algorithm has good convergence even for singularity configuration and is computationally efficient. Kucuk and Bingul
20
proposed a similar algorithm for the inverse kinematics of the 6-DOF robots that cannot be solved in closed form. These methods are limited to several special kinds of 6R 6-DOF robots. And, the multiple-solution problem is not investigated. Following the idea of Pashkevich,
19
a reliable iterative algorithm for the inverse kinematics of a 7R 6-DOF painting robot is presented in this article. Based on the geometrical properties of the robot, the inverse kinematics is converted into an efficient one-dimensional search problem about the fifth joint angle
The rest of the article is organized as follows: In section “The inverse kinematics algorithm,” the geometry of the 7R 6-DOF robot is analyzed and a reliable iterative inverse kinematics algorithm is presented. Section “The multiple-solution problem and resolution” discusses the multiple-solution problem, and three configuration indicators are defined to find the correct solution from all the possible solutions. In section “Simulation and discussion,” three simulations are implemented to illustrate the accuracy and efficiency of the proposed algorithm. The results are presented and discussed. Section “Conclusion” is the conclusion.
The inverse kinematics algorithm
The most popular real-time inverse kinematics algorithm is based on the geometrical properties of the robot. For serial industrial robot, Denavit–Hartenberg (DH) parameters are widely used to describe the geometry of manipulators. Following this notation, a coordinate frame system is attached to each link of the robot, as shown in Figure 2. The corresponding DH parameters of the 7R 6-DOF robot are shown in Table 1, where
where
where
The DH parameters of the 7R 6-DOF robot.
DH: Denavit–Hartenberg; DOF: degree of freedom.
As a result, the problem of inverse kinematics corresponds to calculating the joint angles
As shown in Figure 1, the 7R 6-DOF robot consists of seven revolute joints. Configuration of the first three joints, that is,

Configuration of the 4R 3-DOF wrist.
As shown in Figure 3, the parameter
where
where

The bending angle of the 4R 3-DOF wrist.
Then,
where
As the summary of the above analysis, if

The flowchart of the new proposed algorithm (NA).
For comparison, the Newton–Raphson approach is also reviewed to solve the inverse kinematics of this robot. The Newton–Raphson approach is a well-known iterative method for the inverse kinematics. And the iterative formula of joint angles could be described as
where
The multiple-solution problem and resolution
As stated previously, the first three joint angles
According to the value of the two configuration indicators, four robot configurations corresponding to the four solutions of the first three joint angles can be defined. Then, by appointing the value of the two indicators, one solution can be determined from the possible four solutions. In order to obtain all possible inverse kinematic solutions of the 7R 6-DOF robot for a given
As an example, we take

Position errors of EE: (a) Configuration A, (b) Configuration B, (c) Configuration C, and (d) Configuration D.
Without the loss of generality,

The number of solutions for the last four joints.
In order to deal with the multiple-solution problem result from the last four joints, one more configuration indicator (
Simulation and discussion
In order to illustrate the accuracy and efficiency of the inverse kinematics algorithm proposed in this article, three simulations are implemented on a practical 7R 6-DOF painting robot as shown in Figure 1. The DH parameters of the robot are shown in Table 1. The first simulation aims to validate the accuracy of the algorithm by calculating the eight inverse kinematic solutions with a given configuration of EE. The accuracy of the algorithm is also assessed in the whole usable workspace including the singularities of the robot. The last simulation aims to illustrate the efficiency of the algorithm, when it is tested in an off-line programming operation.
Simulation 1
Take
According to the definition of the three robot configuration indicators (
The inverse kinematic solutions of the 7R 6-DOF robot.
DOF: degree of freedom.

The position errors of initial selected joint angles versus the convergence times.

Postures for the eight inverse kinematic solutions of the 7R 6-DOF robot.
In order to further illustrate the performance of the proposed algorithm, the Newton–Raphson approach is also used to solve this inverse kinematics problem. For simplicity, the computation times of the two methods are summarized in Table 3. From Table 3, the proposed algorithm takes about 65 ms on an average. It is notable that three different initial values are chosen for the Newton–Raphson approach. When the initial value is chosen as
The computation time of the proposed algorithm and Newton–Raphson approach.
Simulation 2
In this simulation, the accuracy of the algorithm is tested in the whole usable workspace including the singularities of the robot. For the 7R 6-DOF robot studied, the usable workspace is shown in Table 4. Then, 500 groups of target joint angles are randomly selected in the usable workspace. In addition, two singular configurations, that is,
The usable workspace of the 7R 6-DOF robot.
DOF: degree of freedom.

Accuracy of the inverse kinematic solutions in the usable workspace.
The solution errors and computation time for simulation 2.
From Figure 10 and Table 5, the inverse kinematic solutions for all 500 randomly selected configurations and two singular configurations are derived with the proposed algorithm. The average and maximum position errors for the 500 randomly selected configurations are 0.003 and 0.01 mm, respectively, which illustrate the accuracy of the algorithm in the whole usable workspace. As for the two singular configurations, the position errors are 0.009 and 0.004 mm, respectively. It is notable that the computation time is influenced by the randomly selected initial solution. However, the computation time is less than 0.07 s, which illustrates that the proposed inverse kinematics algorithm can converge to the accurate solution rapidly. In other words, the proposed algorithm is efficient even for singular configurations.
Simulation 3
The new proposed inverse kinematics algorithm is implemented in an off-line programming operation to painting. The graphic simulator of a 7R 6-DOF painting robot and the task are shown in Figure 11. The trajectory of EE is a classical raster trajectory in the plane

Graphic simulator of the 7R 6-DOF robot and the trajectory.

Simulation results of the 7R 6-DOF robot: (a) joint position, (b) joint velocity, and (c) joint acceleration.
It is obvious that the off-line programming operation is completed with the NA. The algorithm takes 0.009 s on an average on a desktop computer platform (Pentium i7 2.8 GHz, 8 GB RAM, MATLAB software program), which illustrates the efficiency. By comparing simulation 2 and simulation 3, the computing time in simulation 3 is shorter than that in simulation 2. The reason is that the solution of the last step is taken as the initial value of the next step when the robot is following a continuous trajectory. In other words, we should only randomly select the initial value for the original point of the continuous trajectory. Thus, in some degree, we can get the conclusion that the proposed algorithm is more advantageous for a continuous trajectory. And by presetting the value of the three indicators (
Conclusion
A new and efficient numerical iterative algorithm for the inverse kinematics of a 7R 6-DOF robot is proposed and studied in this article. In contrast to the classical methods, the inverse kinematics is converted into an efficient one-dimensional search problem about the fifth joint angle
The accuracy and efficiency have been evaluated with three simulations. In the first simulation, eight solutions are got for a given configuration of EE. By rationally appointing the value of the three indicators, the correct solution can be derived. The solution error is less than 0.0001 degree, which illustrates the accuracy of the proposed algorithm. Additionally, in order to further illustrate the performance of the proposed algorithm, the Jacobian matrix–based method, that is, the Newton–Raphson approach is also used to solve the inverse kinematics problem. The results show that the proposed algorithm is more stable and efficient than the Newton–Raphson approach. The accuracy of the algorithm is also assessed in the whole usable workspace of the robot; the proposed algorithm possesses good convergence, even for singular configurations. In the third simulation, the algorithm is implemented in an off-line programming operation. The results show that the proposed algorithm is efficient for off-line programming. And the proposed algorithm is more advantageous for a continuous trajectory.
Footnotes
Appendix 1
Appendix 2
Appendix 3
Academic Editor: Yangmin Li
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by Tianjin Science and Technology Committee (grant no. 15ZXZNGX00200).
