Abstract
The traditional Denavit–Hatenberg method is a relatively mature method for modeling the kinematics of robots. However, it has an obvious drawback, in that the parameters of the Denavit–Hatenberg model are discontinuous, resulting in singularity when the adjacent joint axes are parallel or close to parallel. As a result, this model is not suitable for kinematic calibration. In this article, to avoid the problem of singularity, the product of exponentials method based on screw theory is employed for kinematics modeling. In addition, the inverse kinematics of the 6R robot manipulator is solved by adopting analytical, geometric, and algebraic methods combined with the Paden–Kahan subproblem as well as matrix theory. Moreover, the kinematic parameters of the Denavit–Hatenberg and the product of exponentials-based models are analyzed, and the singularity of the two models is illustrated. Finally, eight solutions of inverse kinematics are obtained, and the correctness and high level of accuracy of the algorithm proposed in this article are verified. This algorithm provides a reference for the inverse kinematics of robots with three adjacent parallel joints.
Introduction
Robot kinematics includes forward and inverse kinematics, which are considered the basis of trajectory planning and motion control. Forward kinematics is about obtaining the pose of the end effector of robots by choosing a group of joint angles within the workspace, which correspond to a unique solution. According to the known pose of the end effector, the solving of all possible joint angles is regarded as inverse kinematics, for which there are multiple solutions. Due to the widespread use of industrial robots, a number of researchers have become interested in exploring the inverse kinematics of 6-degree of freedom (DOF) robot manipulators. In terms of engineering applications, the inverse kinematics of robots is more practical than the forward kinematics. At present, the Denavit–Hatenberg (D-H) parameter 1 and the screw methods 2 are mainly used for kinematics modeling. Although the D-H parameter method is quite popular, it has some disadvantages. The main deficiency is that the kinematic parameters of the D-H model employed for calibration are discontinuous, leading to singularity when the adjacent joint axes of robots are parallel or close to parallel. 3 –8 As a result, the actual parameters of this model are difficult to identify, and it cannot be considered as a suitable model for kinematic calibration. 9 With the aim of addressing the problem of singularity, several other kinematic models have been proposed, such as the S-model, 10 the complete and parametrically continuous (CPC) model, 11 –13 and the zero reference position model. 14 Similarly, some other methods 15 –19 have also been proposed to avoid the singularities of different robotic systems.
The kinematic calibration of robots involves modeling, measuring, identifying, and compensating. 20 The purpose is to identify the actual kinematic parameters so as to improve the accuracy of robots, while redundant parameters are added to the models mentioned above. 9 For calibration, a perfect kinematic model is needed and it should possess completeness, continuity, and no redundancy, while the models listed above do not possess. Fortunately, the product of exponentials (POE) based on screw theory has been adopted as a new kinematics modeling method that can avoid the problem of singularity arising from the kinematic parameters. 3,8,9,21
Significantly, the POE-based model 9 does have the characteristics of completeness, continuity, and no redundancy and is considered the ideal model. Hence, this model is very suitable for kinematic calibration to handle the problem of the execution errors of robots. Currently, many scholars are dedicated to solving the inverse kinematics of robots, focusing on those in which the axes of the last three consecutive joints intersect at a point, while relatively little attention is being paid to researching robots with three adjacent parallel joint axes. The inverse kinematics of the POE method is usually solved according to the known Paden–Kahan subproblem, 2 but those subproblems are only applied to cope with the inverse kinematics of the robots with low-DOF.
The most popular modeling method for solving the inverse kinematics of robot manipulators is the D-H method, while the POE method based on screw theory or otherwise is relatively seldom used. The inverse kinematics of the traditional industrial robot, in which the last three joint axes intersect at a point, is solved by combining analytical method with trigonometric equation, and the closed form solutions are obtained. 22 Using the D-H modeling method, a novel numerical iterative method for solving the robot manipulator with 6-DOF is proposed, which is compared with the Newton–Raphson method, and the experimental simulation is given, which proves that the proposed method is superior to the solving method of Newton–Raphson. 23 Although this iterative algorithm can cope with the inverse kinematics without closed form, it presents poor performance in solving accuracy. The kinematic model of 6R robots is established by employing the method of geometric algebra, and the equations of kinematics are obtained. Then the kinematic problem is transformed into the problem of eigenvalue, and the 16-group solution is determined. 24 Although this method is effective, its error is relatively large. Chen et al. 25 combined the POE simplification method with subproblems to develop an inverse kinematics solver. However, the solver can only solve the inverse kinematics problem of partially nonredundant robots. Aiming at the special structure of the first three joints of 6R robots, Chen et al. 26 adopted the modeling method of screw and proposed a new solving algorithm of subproblem. This algorithm was applied to “Qianjiang Ι” robot, whose last three joint axes intersect at a point, and eight sets of solutions were obtained. Based on the D-H model, Liu et al. 27 utilized the characteristics of special matrices to convert matrix equations of inverse kinematics into corresponding algebraic equations for solution.
In this article, to effectively identify the actual kinematic parameters and correct the execution error of the end effector of robots resulting from deviations in the geometric structure or other factors, the POE method is employed for kinematics modeling. In addition, analytical, geometric, and algebraic methods in combination with the Paden–Kahan subproblem and matrix theory are adopted to solve the inverse kinematic problem of a type of 6-DOF industrial robot, whose three adjacent joint axes are parallel. Real robot products are used, including the universal robots (UR) robot arms of the Universal Robots company and the open unit robot (OUR) robot arms of the AUBO Robotics Technology Company Limited. For the sake of convenience, in the latter part of this article, the OUR-1 robot (as shown in Figure 1) is used as an example. Furthermore, the problems of singularity of the D-H and POE-based models are analyzed from the changes in the kinematic parameters that occur when the third joint axis of the OUR-1 robot exhibits a slight deviation with respect to the parallel axes. The method of inverse kinematics proposed in this article can be applied to the 6R serial robots with the similar structure as OUR robots or UR robots and provides a reference for the solution of other structural robots.

6-DOF serial robot OUR-1. DOF: degree of freedom.
The rest of this article is organized as follows. In “Screw theory of rigid bodies and model analysis” section, the screw theory of rigid bodies is introduced and the problems of singularity of the D-H and POE-based models are discussed. The inverse kinematic solution algorithm of the 6-DOF OUR-1 robots is put forward in “Inverse kinematics of OUR robot” section. In “Experiment and Verification” section, a numerical calculation and pose error analysis are illustrated to verify the correctness and high level of accuracy of this algorithm. In “Example analysis of kinematic model” section, the example of OUR-1 robot is employed to demonstrate the problems of singularity of the D-H and POE-based models. The final section concludes the article.
Screw theory of rigid bodies and model analysis
To facilitate the understanding of inverse kinematic algorithm, the basic mathematical knowledge of screw theory is introduced in this section and the singularity of the two common models is analyzed.
Screw theory of rigid bodies
In the 3-D space, suppose that {S} and {T} are the inertial coordinate frame at the base and the tool coordinate frame fixed on the end effector, respectively. The pose mapping set of a rigid body relative to the frame {S} is as follows
where SE(3) is the special Euclidean group, that is, a Lie group, 2 R is a 3 × 3 rotational matrix, t is a position vector, and SO(3) is a special orthogonal group.
According to the Chasles theorem, 2 the motion of a rigid body can be decomposed into a rotation around a certain axis and a translation along the same axis. This motion is considered a screw motion, as shown in Figure 2, and its infinitesimal is an element of the Lie algebra se(3), that is, a twist. The twist can be expressed as

Screw motion.
where ξ is the coordinate representation of the twist
Based on screw theory, the motion of a rigid body can be represented by the exponential form as follows
Assume that gst (0) is the initial configuration tool coordinate frame {T} with respect to the inertial coordinate frame {S}. After the rigid body rotates θ around a certain axis or translates θ parallel to a certain axis, the final configuration gst (θ) can be expressed as
The forward kinematics of the serial robots with n-DOF can be given by applying the POE formula
A geometric method may be found to cope with the inverse kinematics by adopting the POE formula. Initially, Paden proposed the solution algorithm, 28 which was based on the research of Kahan. 29 Generally, inverse kinematic subproblems involve no more than 3 twists, such as 11 subproblems, 25 and their solutions are based on several basic subproblems called Paden–Kahan subproblems. There are three basic Paden–Kahan subproblems, and the process by which they are solved. 2 In this article, the Paden–Kahan subproblem will be employed to solve the inverse kinematic problem.
Singularity analysis of kinematics model
In the modeling of robot kinematics, the D-H model is one of the most commonly used models. 30 However, the model parameters are discontinuous leading to singularity when the robot has adjacent parallel or nearly parallel joint axes. 3,6,8,9 Aiming at the deficiency of the D-H model, Hayati et al. 7,31 improved this model and proposed the MD-H model by adding the rotation factor β. Although the model overcomes this problem, the parameter singularity of the MD-H model exists when the adjacent joint axes of robots are vertical or almost vertical. Stone et al. 32 proposed the S-model, which added two parameters on the basis of the D-H model. However, the parameters of kinematics in the model are also discontinuous. Zhuang et al. 11 –13 developed the CPC model, which gets rid of the singularity problem of the model parameters, but the disadvantage is to add redundant parameters. There is no parameter singularity problem in the zero reference model, 33 but redundancy parameters have also been introduced. The POE model 9 of screw uses twists as the kinematic parameters satisfying the property of completeness, nonredundancy, and continuity, which is considered as an ideal calibration model.
Singular configuration is a common phenomenon for almost all mechanisms, and especially for robot manipulators. Although the singular configuration of robots is difficult to avoid, we can reduce the modeling singularity, which is only a mathematical singularity, by choosing a more suitable kinematic model. The singular analyses of the D-H and the POE-based models are presented below.
Analysis of the D-H model
The D-H modeling method 1 is introduced, which has four parameters: joint angle θi , translational distance di , link length ai , and twist angle αi . In this method, the relationship between adjacent joints is represented by employing the four parameters. However, this model suffers from singularity when the adjacent joint axes are parallel or close to parallel. 3 –8 This singularity refers to the slight deviation from the parallel joint axes, which causes significant changes to the parameters of the model. 9 It should be noted that di can’t be determined when the adjacent revolute joint axes are parallel. 4
It is in fact very difficult to manufacture completely parallel joints. A slight twist angle deviating from the parallel joint axes will cause the distance di to become extremely large and the origin of the coordinate frame to deviate from the joint position. 4,7,34 The graphic representation is presented in Figure 3.

Parallel joint coordinate frames.
In Figure 3, we assume a joint axis zi , that is, the nominal axis has a slight deviation angle γ (γ → 0) due to manufacturing errors or other geometric factors, so we might as well nominate this axis to be axis zi ′, that is, the actual axis. From Figure 3, we can see that the zi −1 and zi ′ axes will intersect at point e away from the coordinate origin oi −1. Meanwhile, the parameters of the model will change from θi = 0, di = 0, ai = L, αi = 0 to θi = −90°, di = −L cot(γ), ai = 0, αi = − γ. Thus, the kinematic parameters of this model will vary greatly with small errors from the geometrical structure. It’s worth noting that the distance di → ∞ when γ → 0, so that it is not continuous. In other words, the slight deviation from the adjacent parallel axes cannot be described by the small changes in kinematic parameters. Hence, the D-H model has the problem of singularity when the adjacent joint axes are parallel or close to parallel.
Analysis of the POE-based model
Unlike the D-H model, the POE-based model only needs to establish two coordinates: the inertial and tool coordinate frames. Moreover, the motion of a rigid body can be represented relative to the inertial coordinate frame as a whole, so this model avoids the problem of singularity.
Generally, the POE method is also regarded as a zero reference position method, and using this method, the description with respect to the joint axes is on the basis of the linear geometry.
21
Therefore, it is uniform to establish the kinematic model, regardless of whether the robot manipulators have revolute or prismatic joints. The initial configuration gst
(0) can also be expressed as
where
As shown in equation (8), the POE formula is composed of a series of exponential forms of twists and joint angles. The twist is an element of the Lie algebra, that is,
Inverse kinematics of OUR robot
Kinematics modeling
As mentioned above, the POE-based model is singularity-free and is deemed to be a perfect model for kinematic calibration. To facilitate further calibration, which preferably corrects the parameter error and improves the execution accuracy of OUR robot, the POE method is adopted for kinematics modeling.
The 6-DOF serial robot manipulator “OUR-1” with six revolute joints is shown in Figure 1. As illustrated in Figure 1, the axes of the first two joints, the axes of the fourth and fifth joints, and the axes of the fifth and sixth joints intersect at a point, respectively, while the second, third, and fourth joint axes are parallel to each other, satisfying the Pieper principle with closed solutions. The weight of the OUR-1 robot is 18.5 kg, and the payload is 5 kg, which can reach 850 mm. 35 This robot and UR robot with the similar structure are widely used in the industrial field, so the kinematic research of the robot is of great significance.
Based on screw theory, the structure coordinates are established as shown in Figure 4. The D-H parameters and the range of joint rotation of the OUR-1 robot are presented in Table 1.

Structure coordinates.
D-H parameters of OUR-1 robot.
D-H: Denavit–Hatenberg.
The unit vector ωi , point ri , and twist ξi of each joint are constructed as follows
We can represent the initial configuration in Figures 1 and 4 by
The configuration of the 6-DOF serial robots is expressed by the POE formula of the forward kinematics as follows
Solving the inverse kinematics
Solving θ 1
Suppose that ξ 1, ξ 2, ξ 3, and ξ 4 are unit twists with zero-pitch. Right-multiplying equation (10) by gst −1 (0) obtains
Assume that the axes of the fifth and sixth joints intersect at point p 56. Right-multiplying equation (11) by p 56, and according to the principle of position invariance, we can get
The equation (12) represents the screw motion of point p 56 in the first four joints and corresponds to the geometrical graph, as shown in Figure 5.

The screw motion of the first four joints.
As illustrated in Figure 5, point p 56 first of all reaches point p 4 by rotating angle θ 4 around axis ξ 4. This point then reaches point p 3 by rotating angle θ 3 around axis ξ 3. After that, point p 3 reaches point p 2 by rotating angle θ 2 around axis ξ 2, and finally reaches point p 1 by rotating angle θ 1 around axis ξ 1 in the initial configuration. The key to solving angle θ 1 is to calculate point p 2. This point can be determined by the known point p 56 and p 1.
According to the geometrical relationship in Figure 5, we have
where ω 1, ω 2, o 1, and p 56 are represented as follows
Point p 2 can be obtained using equation (13)
The screw motion in the first joint can be expressed as
Adopting the Paden–Kahan subproblem 1 2 , the θ 1 can be given as follows
where
Solving θ 5 and θ 6
Left-multiplying equation (11) by
Let
In equation (10), let
Then, the
According to the corresponding matrix elements of each side in equation (17), the equation set can be obtained
The θ 5, θ 6, and (θ 2 + θ 3 + θ 4) can be determined by utilizing equation (19)
where
Solving θ 2, θ 3, and θ 4
Right-multiplying equation (17) by
Let
From equations (23) and (24), we can obtain
where
The θ 2 and (θ 2 + θ 3) can be given according to equation (25).
where
We can determine θ 3 and θ 4 by
Until now, the closed solutions of inverse kinematics have been determined completely by applying Paden–Kahan subproblem and the matrix theory. The algorithm of inverse kinematics proposed in this article is applicable to 6-DOF robots with only rotational joints, such as OUR robots, UR robots, or other robots with the similar structure. It is worth mentioning that the calculation can be greatly simplified if we choose a suitable reference coordinate frame such as the inertial coordinate frame {S}.
Experiment and verification
The inverse kinematic solution of OUR-1 robot is calculated in order to verify the correctness of the proposed algorithm. The structure parameters of OUR-1 robot as shown in Table 1 are
In the process of validating the algorithm of inverse kinematics, a set of initial angles are firstly selected within the range of joint motion, and the target pose is calculated by the POE formula. Then, according to the obtained pose and the proposed algorithm, the angle of each joint is determined. After that, we use the obtained sets of angles again to solve the target pose. Both of the forward and inverse kinematics of robots are computed by utilizing MATLAB. The specific validation procedure is presented as follows:
Step 1: Arbitrarily choose a group of joint angles within the workspace.
Step 2: Solve the forward kinematics to obtain the pose of the end effector adopting equation (10)
Step 3: Solve the inverse kinematics to get all possible joint angles according to the proposed method and the pose obtained above.
The eight groups of solutions of inverse kinematics are given as shown in Table 2. As illustrated in Table 2, the fifth group of joint angles is exactly the same as the angles given in step 1 under the condition of reserving to twelve decimal places.
Eight solutions of inverse kinematics.
Step 4: Solve the forward kinematics again to get the corresponding poses of the eight solutions mentioned above.
Step 5: Calculate the 2-norm of the difference matrix between steps 2 and 4 and find out the maximal pose error.
By comparison, the 2-norm of the difference matrix of the fourth group of solutions is maximal, as follows
The corresponding maximal error of pose
where gst and gst 4 are the corresponding poses of the given group and the fourth group of joint angles, respectively.
In the experiment, a group of closed solutions, that is, eight solutions are determined because the three adjacent joint axes of OUR-1 robots are parallel to each other. From the proposed algorithm and the results of inverse kinematics as illustrated in Table 2, we can see that special features of the closed form solution are presented: the angles θ 1, θ 5, θ 6 of the first and second groups, the third and fourth groups, the fifth and sixth groups, the seventh and eighth groups of solutions are same respectively, and the sum of angle θ 2, θ 3, and θ 4 of every two groups are also the same, which are generated by the special structure of the robot. To verify the correctness of the algorithm of inverse kinematics, we compare the obtained eight sets of solutions with the given set of angles and find that the fifth set of solution is exactly the same as the given angles. In addition, we also calculate the difference of matrix between the corresponding pose of eight sets of solutions and the given pose and solve the 2-norm of each difference of matrix, which represents the size of the distance of error matrix, and the larger the 2-norm, the greater the error. Finally, the maximal 2-norm of the difference of matrix is in the order of 10−13 magnitude as shown in equation (33), and the corresponding maximal pose error is in the order of 10−12 magnitude as presented in equation (34), which verifies the correctness and high precision of the algorithm.
Example analysis of kinematic model
In “Screw theory of rigid bodies and model analysis” section, the parameter singularity of the D-H and POE models is discussed and in this section, we will analyze the two models in combination with OUR-1 robots.
As shown in Figure 1, the second, third, and fourth joint axes of OUR-1 robot are parallel. Assume that the structure of OUR-1 robot has no errors except for the third joint axis having a slight deviation angle γ with respect to the parallel axes and the first three joint coordinate frames of OUR-1 robot employing the D-H modeling method, as shown in Figure 6. When the second and third joint axes are parallel, the D-H parameters of the second link are θ = 90°, d = 0, a = a 2, α = 0, while they become θ = 0, d = −d 2′, a = 0, α = −γ when the third joint axis has a deviation angle γ. Given the above mentioned situation, the D-H parameters vary greatly with a small error from the orientation of the parallel joint axes. It’s worth mentioning that parameter d = −a 2cot(γ) → ∞ when γ → 0. Namely, the distance d changes sensitively and jumps rapidly when γ → 0. Hence, the parameters of this model are discontinuous leading to the singularity of the model when the adjacent joints have parallel or close to parallel axes.

The first three joint coordinate frames.
Similarly, suppose that the structure of OUR-1 robot has no deviations except for the third joint axis having an error angle γ relative to the parallel axes. To better demonstrate that the POE-based model is singularity-free, here we might as well assume that the absolute value of angle γ is within 5° and that the twist of the third joint is ξ 3 = (ω 3;ν 3), where ω 3 = [ωx , ωy , ωz ] T and υ 3 = [υx , υy , υz ] T . The POE method is adopted for kinematics modeling. When the third joint axis has a deviation angle γ with respect to the parallel axes, the error of twist ξ 3 is calculated by sampling 21 points at equal intervals, as shown in Figure 7. From Figure 7, the errors of twist ξ 3 vary slowly and smoothly with slight changes from the parallel joint axes. That is to say, the slight deviation from the parallel joint axes can be described by the small changes in the kinematic parameters. The actual parameters of this model can be identified in the kinematic calibration. Therefore, it would be helpful to illustrate that the POE-based model is singularity-free.

Error results.
Conclusion
The inverse kinematics of the OUR-1 robot is solved by employing the analytical, geometric, and algebraic methods combined with the Paden–Kahan subproblem as well as matrix theory. Clear geometric significance is presented by applying the geometric method. The kinematic parameters of the D-H and the POE-based models are analyzed and illustrated to demonstrate the problem of singularity of the two models. The singularity of the model depends on whether the kinematic parameters are continuous. If they are continuous, the model is nonsingular; otherwise, it is singular. In experiments, we obtain eight solutions of inverse kinematics, and the correctness and high level of accuracy of the proposed algorithm are verified by calculating the maximal 2-norm of the difference matrix and the corresponding pose error of OUR-1 robot, which is in the order of 10−12 magnitude. This algorithm utilizes the motion trajectory of screw as illustrated in Figure 5, which can make the geometric significance clearer and be applied to the 6R serial robots with the similar structure to OUR robots or UR robots. In future work, robot kinematics calibration, the selection of optimal solution and trajectory planning need to be further studied.
Footnotes
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 the National Key R&D Plan (2017YFC080670), National Natural Science Foundation of China (61472468, 61572331, 61602325, 61702348), the Project of the Beijing Municipal Science & Technology Commission (LJ201607), Capacity Building for Sci-Tech Innovation—Fundamental Scientific Research Funds (025185305000), and Capital Normal University Major (key) Nurturing Project.
