RESEARCH ARTICLE

General closed-form inverse kinematics for arbitrary three-joint subproblems based on the product of exponential model

  • Tao SONG 1 ,
  • Bo PAN , 1 ,
  • Guojun NIU 2 ,
  • Jiawen YAN 1 ,
  • Yili FU 1
Expand
  • 1. State Key Laboratory of Robotics and System, Harbin Institute of Technology, Harbin 150001, China
  • 2. School of Mechanical Engineering and Automation, Zhejiang Sci-Tech University, Hangzhou 310018, China

Received date: 02 Oct 2021

Accepted date: 21 Feb 2022

Published date: 15 Jun 2022

Copyright

2022 Higher Education Press

Abstract

The inverse kinematics problems of robots are usually decomposed into several Paden–Kahan subproblems based on the product of exponential model. However, the simple combination of subproblems cannot solve all the inverse kinematics problems, and there is no common approach to solve arbitrary three-joint subproblems in an arbitrary postural relationship. The novel algebraic geometric (NAG) methods that obtain the general closed-form inverse kinematics for all types of three-joint subproblems are presented in this paper. The geometric and algebraic constraints are used as the conditions precedent to solve the inverse kinematics of three-joint subproblems. The NAG methods can be applied in the inverse kinematics of three-joint subproblems in an arbitrary postural relationship. The inverse kinematics simulations of all three-joint subproblems are implemented, and simulation results indicating that the inverse solutions are consistent with the given joint angles validate the general closed-form inverse kinematics. Huaque III minimally invasive surgical robot is used as the experimental platform for the simulation, and a master–slave tracking experiment is conducted to verify the NAG methods. The simulation result shows the inverse solutions and six sets given joint angles are consistent. Additionally, the mean and maximum of the master–slave tracking experiment for the closed-form solution are 0.1486 and 0.4777 mm, respectively, while the mean and maximum of the master–slave tracking experiment for the compensation method are 0.3188 and 0.6394 mm, respectively. The experiments results demonstrate that the closed-form solution is superior to the compensation method. The results verify the proposed general closed-form inverse kinematics based on the NAG methods.

Cite this article

Tao SONG , Bo PAN , Guojun NIU , Jiawen YAN , Yili FU . General closed-form inverse kinematics for arbitrary three-joint subproblems based on the product of exponential model[J]. Frontiers of Mechanical Engineering, 2022 , 17(2) : 25 . DOI: 10.1007/s11465-022-0681-7

1 Introduction

The inverse kinematics problem of a robot manipulator is one of the most fundamental steps to obtain the mapping relationship between the end-effector and the joint angles in real-time control and trajectory planning [1,2]. This problem has been widely studied in various fields, such as medical robotics [35], bionic robotics [6,7], reconfigurable robotics [8,9], and redundant manipulator [10]. There are multiple methods derived based on the Denavit–Harbenterg (D–H) model and the product of exponential (POE) model to solve the inverse kinematics problem. For the D–H model, the robot needs to satisfy the Pieper criterion that three adjacent joint axes intersect at a single point. When it does not meet the Pieper criterion, there are other methods that can be applied, such as iterative methods [11,12], genetic methods [13,14], and neural network [15,16]. Tang [5] adopted the two-step approximate and compensation solution method to solve the inverse solution of the surgical instrument that did not meet the Pieper criterion. The wrist length of the surgical instrument was ignored in the solution process, and the relative motion error of the surgical instrument was compensated. However, the relative motion error of the surgical instrument increased when instrument pose was close to the singularity. Xu et al. [12] presented the hierarchical iterative inverse kinematics algorithm, which consisted of two-level iterations. The first-level iteration achieved accurate initial estimates through an extended heuristic iterative method. On this basis, the second-level iteration calculated all the joint angles. The proposed algorithm was applied to a six-degree-of-freedom (6-DOF) manipulator with a 2-DOF reduced wrist. Zhou et al. [14] took the motion constraints into account to design the fitness function and utilized the cosine adaptive genetic algorithm to complete the time-optimal trajectory planning. Tian and Xu [15] designed the convolutional neural network and the effective neural network visual layer pre-training method to control the robot arm end-to-end. The simulation result validated the efficiency of the proposed convolutional neural network. Although these methods can obtain the feasible inverse kinematics solution when the robot does not meet the Pieper criterion, they are time-consuming, and the completeness, convergence, and robustness of the inverse solution cannot be guaranteed. In addition, these methods based on the D–H model are complex to establish the local coordinate system between the adjacent joints, and plenty of specific analyses are required for each manipulator. Therefore, the requirement for the closed-form inverse solution is necessary because of its accuracy and real-time capability. If the trajectory of the end-effector is continuous, then the closed-form solutions of the joints are continuous. In theory, the closed-form solution based on the POE model is error-free, so the robot is not affected by the cumulative error.
The expression of joint axis in the POE model is different from that in the D–H model. In the POE model, the transform of an arbitrary rigid body with respect to the inertial coordinate system can be expressed by a screw displacement [17]. Hence, the singularity problem that happens when adjacent joints are parallel in the D–H model does not occur in the POE model [18,19]. Screw theory and POE formula are used to provide a simplified symbolic representation that can obtain definite geometric significance. Furthermore, the inverse kinematics solution based on the POE model is closed-form, which is the most desired form of the inverse solution. Paden–Kahan method [20] decomposed the integrated manipulator into three classes of subproblems that can be easily solved. However, the simple combination of subproblems cannot solve all inverse solutions. Chen and Gao [21] introduced 11 types of subproblems for different configurations, including revolute and prismatic joints, and presented the solutions of some subproblems. By contrast, the case where the axes of the first two joints do not intersect cannot be solved. Zhao et al. [22] expanded the three classes to 28 detailed types of subproblems, consequently enabling the inverse solution to be easily obtained by assembling several subproblems according to the configuration. The subproblem RRT (R: revolute, T: translational) case where two adjacent axes intersect was solved, but other complex cases were not mentioned. Tan et al. [23] extended the second subproblem by two axes, and the exact solution was obtained. The extended case is where the rotation to a point at a fixed distance from a given point was solved in a constructed manipulator. Leoro et al. [24] presented a new subproblem where the adjacent joints are parallel and both perpendicular to the third axis, and the solving method was applied to the 6-DOF EverRobot RH12. Chen et al. [25] improved an existing subproblem where adjacent axes were parallel and applied to the 6-DOF Qianjiang-I robot. Li et al. [26] proposed a new subproblem where three adjacent axes intersect at one point, and a humanoid arm with the configuration of generalized SRU was taken as the paradigm to validate the correctness of the analytical formula. Wang et al. [27,28] proposed the general frame for arbitrary 3R subproblems based on the POE model, and special cases such as perpendicular and parallel between multiple axes were taken into account. Simulation and experiment were likewise carried out to verify the availability of the proposed method. Wang et al. [29] presented a novel analytical inverse kinematics method for the 7-DOF space station remote manipulator system, and the simulation results showed improved calculation accuracy.
As discussed in the literature, the aforementioned methods focus on three revolute joint subproblems. However, the mixture of prismatic and revolute joints is frequently used in practical working environments, and there is no general approach to solve arbitrary three-joint subproblems in arbitrary posture. As a consequence, novel algebraic geometric (NAG) methods are presented to obtain the general closed-form inverse kinematics of all types of three-joint subproblems in this paper. The geometric and algebraic constraints are used as the conditions precedent to solve the inverse kinematics of three-joint subproblems. The NAG methods can solve inverse kinematics of three-joint subproblems in an arbitrary postural relationship.
The content of the paper is organized as follows. Section 2 introduces some fundamental properties of the POE formula and screw theory. The NAG methods for all types of three-joint subproblems in arbitrary postural relationship are described in detail in Section 3. In Section 4, the inverse kinematics simulations of all three-joint subproblems are implemented, and simulation and the master–slave tracking experiment based on the Huaque III minimally invasive surgical robot are carried out to verify the effectiveness of proposed NAG methods. The paper is concluded in the final section.

2 Preliminary knowledge

2.1 Mathematical description of the POE formula

The POE formula of the kinematics of a 3-DOF serial robot has the following form:
q~=eξ^1θ1eξ^2θ2eξ^3θ3p~,
where ξi (i=1,2,3) represents the twist coordinate of the ith joint axis, θi (i=1,2,3) represents the generalized angle of the ith joint, ξ=[ωr×ω] represents the revolute joint twist, ξ=[03×1v] represents the prismatic joint twist, ω represents the unit directional vector of the revolute joint axis, r is the position vector of the reference point r of the revolute joint axis, v represents the unit directional vector of the translational joint axis, ξ^i (i=1,2,3) represents the instantaneous joint twist of the ith joint axis, and q~ and p~ represent the homogeneous coordinate of points q and p, respectively. In addition, eξ^iθi represents the rigid motion. For the revolute and translational joints, eξ^θ is expressed respectively as
eξ^θ={[I3×3vθ01×31],ω=0,[eω^θ(I3×3eω^θ)(ω×(r×ω))+θωωT(r×ω)01×31],ω0,
where ω^ represents the skew-symmetric matrices of ω. eω^θ is a rotation matrix and is equivalent to the rotation matrix RSO(3) according to Euler’s theorem. eω^θ can be expressed via Rodrigues’ formula as
eω^θ=I+ω^sinθ+ω^2(1cosθ).

2.2 Mathematical description of the POE formula

The Paden–Kahan subproblem 1 is q~=eξ^θp~ and can be transformed as
q=eω^θ(pr)+r,
where q and p represent the position vectors of points q and p, respectively. Substituting Rodrigues’ formula for eω^θ into the above equation yields
xsinθ+ycosθ+z=0,
where x=ω^(pr)R3×1, y=ω^2(pr)R3×1, and z=ω^2(pr)+pqR3×1. Since xTy=0 and xTx=yTy, θ can be solved by sinθ=xTzxTx and cosθ=yTzyTy, respectively.
The distance preservation principle is applied to the solution of subproblems with a revolute joint, which is often accompanied by squaring both sides of the equation. For instance, there is a distance δ between two vectors s and t as δ=st. Squaring both sides yields s2+t2+2tTs=δ2.

3 NAG method for arbitrary three-joint subproblems

Three-joint subproblems are extensions of several base subproblems, with R for revolute joint and T for translational joint. In total, there are many types of three-joint subproblems, namely, RRR, RRT, RTR, TRR, RTT, TRT, TTR, and TTT. Equation (1) is transformed as follows
p~=eξ^3θ3eξ^2θ2eξ^1θ1q~.
Combining Eqs. (1) and (6) easily derives the equivalence of RRT and RTT to TRR and TTR [21]. Hence, the general closed-form solutions of RRR, RRT, RTR, TRR, TRT, and TTT types of three-joint subproblems are derived, and the special postures of those three-joint subproblems are discussed in this paper.

3.1 NAG method realization for the RRR subproblem

For the RRR three-joint subproblem, point p is rotated around ξ3, ξ2, and ξ1 respectively by θ3, θ2, and θ1 to point q. Point p rotates around ξ3 at θ3 to point c and point q rotates around ξ1 at θ1 to point d, as shown in Fig.1. The vectors c, d, p, p1, p2, p3, and q represent the position vectors of points c, d, p, p1, p2, p3, and q, respectively. The representations below are consistent with the definition here. This means that c=eω^3θ3(pp3)+p3 and d=eω^1θ1(qp1)+p1, where points p1 and p3 are located on the ξ1 and ξ3, respectively. Clearly, points c and d are located on the circle C2 normal to ξ2. The twist ξ2 passes through point p2. According to the geometric and algebraic constraints, this is easily accessible as
Fig.1 General form of the RRR three-joint subproblem.

Full size|PPT slide

ω2T(cd)=0,
cp2=dp2.
By substituting the expressions for points c and d into Eqs. (7) and (8) and squaring both sides of Eq. (8), eω^1θ1 and eω^3θ3 are replaced by their Rodrigues’ formulas. The above two equations are transformed as follows:
x1sinθ1+y1cosθ1+x2sinθ3+y2cosθ3+z1=0,
x3sinθ1+y3cosθ1+x4sinθ3+y4cosθ3+z2=0,
where x1=ω2Tω^1(qp1), y1=ω2Tω^12(qp1), x2= ω2Tω^3(pp3), y2=ω2Tω^32(pp3), z1=ω2T[ω^12(qp1) ω^32(pp3)+qp], x3=2(p1p2)Tω^1(qp1), y3= 2(p1p2)Tω^12(qp1), x4=2(p3p2)Tω^3(pp3), y4= 2(p3p2)Tω^32(pp3), and z2=qp12+p1p22 pp32p3p22+2(p1p2)T(I+ω^12)(qp1)2(p3p2)T (I+ω^32)(pp3).
For the revolute joints, ω1Tω^2=ω2Tω^1=01×3 holds if ξ1 is parallel to ξ2. The RRR three-joint subproblems for special configurations are explained and illustrated considering the property of parallel joint axes.
Category 1: ξ2ξ1 when ξ2ξ3.
This category indicates ω2Tω^3=01×3 and ω2Tω^101×3. Then Eq. (9) is transformed to
x1sinθ1+y1cosθ1+z1=0.
θ1 can be solved by combining the above equation and the trigonometric relationship. If x10, then θ1= arcsinz1x12+y12arctany1x1; if y10, then θ1= arccosz1x12+y12+arctanx1y1.
The value of θ1 is substituted into Eq. (10), and similarly, θ3 can be solved. θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
Category 2: ξ2ξ3 when ξ2ξ1.
This category indicates ω2Tω^1=01×3 and ω2Tω^301×3. Then Eq. (9) is transformed to
x2sinθ3+y2cosθ3+z1=0.
Likewise, θ3 can be solved by combining the above equation and the trigonometric relationship, and θ1 can be solved by substituting the value of θ3 into Eq. (10). θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
Category 3: ξ2ξ3 when ξ2ξ1.
This category indicates that ω2Tω^1=01×3 and ω2Tω^3=01×3. Points c, d, p1, p2, and p3 are located on one plane. The plane passes through points p and q and is perpendicular to the twist ξ2. Therefore, the identity of Eq. (7) is always established. For Eq. (8), there are two cases here, namely, the unique solution or an infinite number of solutions. The case of the unique solution is shown in Fig.2. Let l12=p1p2, l23=p3p2, δ1=qp1, δ3=pp3. l12 represents the distance between points p1 and p2, l23 represents the distance between points p2 and p3, δ1 represents the distance between points q and p1, and δ3 represents the distance between points p and p3. Assuming l12>l23, the following equation is satisfied when there is a unique solution; otherwise, there is an infinite number of solutions:
Fig.2 Form of the unique solution under triaxial parallelism.

Full size|PPT slide

l12δ1=l23+δ3.
The locations of the transition points are d=p1+(p2p1)δ1/(p2p1)δ1l12l12 and c=p2+(p3p2)(l23+δ3)/(p3p2)(l23+δ3)l23l23. θ1, θ2, and θ3 are solved by Eq. (4).
Conversely, if l12<l23, then l12+δ1=l23δ3 is satisfied when there is a unique solution.
Category 4: ξ2ξ3 when ξ2ξ1.
There are two cases in this category: Two adjacent axes are non-intersecting or two adjacent axes are intersected. For the case where two adjacent axes do not intersect, x1y3x3y10 and x2y4x4y20 hold at least one. Thus, Eqs. (9) and (10) can be written in the case of x1y3 x3y10 as
{sinθ1=a1sinθ3+b1cosθ3+c1,cosθ1=a2sinθ3+b2cosθ3+c2,
where a1=x4y1x2y3x1y3x3y1, b1=y1y4y2y3x1y3x3y1, c1=y1z2y3z1x1y3x3y1, a2=x2x3x1x4x1y3x3y1, b2=x3y2x1y4x1y3x3y1, and c2=x3z1x1z2x1y3x3y1. Substituting Eq. (14) into sin2θ1+cos2θ1=1 is written as
(a1sinθ3+b1cosθ3+c1)2+(a2sinθ3+b2cosθ3+c2)2=1.
Let t=tanθ3/θ322, then sinθ3=2t/2t(1+t2)(1+t2) and cosθ3= (1t2)/(1t2)(1+t2)(1+t2). These are substituted into Eq. (15) as
m1t4+m2t3+m3t2+m4t+m5=0,
where m1=(b1c1)2+(b2c2)21, m2=4[a1(c1b1)+ a2(c2b2)], m3=2(2a12+2a22b12b22+c12+c221), m4= 4[a1(b1+c1)+a2(b2+c2)], and m5=(b1+c1)2+ (b2+c2)21. For the quartic equation of Eq. (16), the solution of t is easily obtained by adopting Ferrari’s method. The value of θ3 can be solved as
θ3=2arctant.
The value of θ3 is substituted into Eq. (14) to solve θ1. Similarly, θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
The schematic for the case where two adjacent axes intersect is shown in Fig.3. The twists ξ1 and ξ2 intersect at one point. Points c and d are located on one plane that is perpendicular to the twist ξ2. The geometric constraint is the same as Eq. (7), and algebraic constraint in Fig.3 is
Fig.3 General form of the two adjacent axes of the RRR three-joint subproblem.

Full size|PPT slide

cp2=qp2.
By substituting the expression for point c into Eq. (18) and squaring both sides of Eq. (18), eω^3θ3 is replaced by Rodrigues’ formula. The above equation is transformed as follows:
a1sinθ3+b1cosθ3+c1=0,
where a1=2(p3p2)Tω^3(pp3), b1=2(p3p2)Tω^32 (pp3), and c1=pp32+p3p22qp22+ 2(p3p2)T(I+ω^32)(pp3).
θ3 can be solved by combining the above equation and the trigonometric relationship, and θ1 can be solved by substituting the value of θ3 into Eq. (9). θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).

3.2 NAG method realization for the RRT subproblem

For the RRT three-joint subproblem, it is assumed that point p moves along ξ3 by θ3 to point c and point q rotates around ξ1 at θ1 to point d, as shown in Fig.4. This means that c=θ3v3+p and d=eω^1θ1(qp1)+p1, where p1 is located on the ξ1. It is obvious that points c and d are located on the circle C2 normal to ξ2. The twist ξ2 passes through point p2. This is easily accessible according to the geometric and algebraic constraints as
Fig.4 General form of the RRT three-joint subproblem.

Full size|PPT slide

ω2T(dc)=0,
cp2=dp2.
By substituting the expressions for points c and d into Eqs. (20) and (21), respectively, and squaring both sides of Eq. (21), eω^1θ1 is replaced by Rodrigues’ formula. The above two equations are transformed as follows:
x1sinθ1+y1cosθ1+λ1θ3+z1=0,
x2sinθ1+y2cosθ1+λ2θ32+λ3θ3+z2=0,
where x1=ω2Tω^1(qp1), y1=ω2Tω^12(qp1), λ1= ω2Tv3, z1=ω2T[ω^12(qp1)+qp], x2=2(p1p2)Tω^1 (qp1), y2=2(p1p2)Tω^12(qp1), λ2=1, λ3= 2(pp2)Tv3, z2=qp12+p1p22pp22+ 2(p1p2)T(I+ω^12)(qp1).
For the revolute joints, ω1Tω^2=ω2Tω^1=01×3 holds if ξ1 is parallel to ξ2. For arbitrary two axes, ω1Tω2=0 holds if ξ1 is perpendicular to ξ2. The RRT subproblems for special configurations are explained and illustrated considering the characteristics of parallel and vertical joint axes.
Category 1: ξ2ξ1 when ξ2ξ3.
This category indicates ω2Tω^1=01×3 and ω2Tv3=0. Points c, d, p1, and p2 are located on one plane. The plane passes through points p and q and is perpendicular to the twist ξ2. Therefore, the identity of Eq. (20) is always established. For Eq. (23), there are two cases here: the unique solution or an infinite number of solutions, as shown in Fig.5 and Fig.5, respectively. Let l12=p1p2, lc2=cp2, and δ1=qp1, where l12 represents the distance between the points p1 and p2, lc2 represents the distance between the points c and p2, and δ1 represents the distance between the points q and p1. Point c is the tangent point between the circle C2 and twist ξ3, and l12+δ1=lc2 is satisfied when there is a unique solution. This means that c=p+v3v3T(p2p). For the case of a unique solution, Eq. (23) should satisfy that θ3 has a unique solution as follows:
Fig.5 Solution of RRT satisfying ω2ω1 and ω2v3. (a) Unique solution of category 1, (b) infinite number of solutions of category 1.

Full size|PPT slide

λ324λ2(x2sinθ1+y2cosθ1+z2)=0.
θ1 can be solved by combining the above equation and the trigonometric relationship, and θ3 can be solved by substituting the value of θ1 into Eq. (23).
Another solution to this problem is to obtain θ3=λ3/λ3(2λ2)(2λ2) based on the fact that θ3 has a unique solution. Then, θ1 can be solved by substituting the value of θ3 into Eq. (23) and the trigonometric relationship. θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
The infinite number of solutions of θ3 are depicted as red line segments in Fig.5(b), with the inverse solution of θ3 at any point on the line segments.
Category 2: ξ2 is not parallel to ξ1 when ξ2ξ3.
This category indicates ω2Tω^101×3 and ω2Tv3=0. Then Eq. (22) is transformed to
x1sinθ1+y1cosθ1+z1=0.
θ1 can be solved by combining the above equation and the trigonometric relationship. θ3 can be solved by substituting the value of θ1 into Eq. (23) and the trigonometric relationship. θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
Category 3: ξ2ξ1 when ξ2 is not perpendicular to ξ3.
This category indicates ω2Tω^1=01×3 and ω2Tv30. Then θ3 can be solved by θ3=z1/z1λ1λ1 according to Eq. (22). The value of θ3 is substituted into Eq. (23) to solve θ1. θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
Category 4: ξ2ξ1 when ξ2 is not perpendicular to ξ3.
This category indicates ω2Tω^101×3 and ω2Tv30. If twists ξ1 and ξ2 intersect, the choices of points p1 and p2 should not be the point where the twists intersect. θ3 is replaced with sinθ1 and cosθ1 in Eq. (22) and substituted into Eq. (23) as
a1sin2θ1+a2cos2θ1+a3sinθ1cosθ1+a4sinθ1+a5cosθ1+a6=0,
where a1=λ2x12, a2=λ2y12, a3=2λ2x1y1, a4=λ12x2+ 2λ2x1z1λ1λ3x1, a5=λ12y2+2λ2y1z1λ1λ3y1, and a6= λ2z12λ1λ3z1+λ12z2. Let t=tanθ1/θ122, then θ1= sin(2t)/2t(1+t2)(1+t2) and cosθ1=(1t2)/(1t2)(1+t2)(1+t2). Those are substituted into Eq. (26) as
m1t4+m2t3+m3t2+m4t+m5=0,
where m1=a2a5+a6, m2=2(a4a3), m3=2(2a1 a2+a6), m4=2(a3+a4), and m5=a2+a5+a6. For the quartic equation of Eq. (27), the solution t is easily obtained by adopting Ferrari’s method. The value of θ1 can be solved as
θ1=2arctant.
The value of θ1 is substituted into Eq. (22) to solve θ3. Similarly, θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).

3.3 NAG method realization for the RTR subproblem

For the RTR three-joint subproblem, it is assumed that point p rotates around ξ3 at θ3 to point c and point c moves along ξ2 by θ2 to point d, as shown in Fig.6. This means that c=eω^3θ3(pp3)+p3 and d=c+θ2v2, where p3 is located on the ξ3. Clearly, points d and q are located on the circle C1 normal to ξ1. The twist ξ1 passes through point p1. This is easily accessible according to the geometric and algebraic constraints as
Fig.6 General form of the RTR three-joint subproblem.

Full size|PPT slide

ω1T(dq)=0,
qp1=dp1.
By substituting the expressions for points c and d into Eqs. (29) and (30), respectively, and squaring both sides of Eq. (30), eω^3θ3 is replaced by Rodrigues’ formula. The above two equations are transformed as follows:
x1sinθ3+y1cosθ3+λ1θ2+z1=0,
x2sinθ3+y2cosθ3+λ2θ22+λ3θ2+x3θ2sinθ3+y3θ2cosθ3+z2=0,
where x1=ω1Tω^3(pp3), y1=ω1Tω^32(pp3), λ1=ω1Tv2, z1=ω1T(ω^32(pp3)+pq), x2=2(p3p1)Tω^3(pp3), y2=2(p3p1)Tω^32(pp3), λ2=1, λ3=2v2T[(I+ω^32)(pp3)+ (p3p1)], x3=2v2Tω^3(pp3), y3=2v2Tω^32(pp3), z2= pp32+p3p12qp12+2(p3p1)T(I+ω^3)(pp3).
For the revolute joints, ω1Tω^2=ω2Tω^1=01×3 holds if ξ1 is parallel to ξ2. For two arbitrary axes, ω1Tω2=0 holds if ξ1 is perpendicular to ξ2. The RTR three-joint subproblems for special configurations are explained and illustrated considering the characteristics of parallel and vertical joint axes.
Category 1: ξ1ξ3 when ξ1ξ2.
This category indicates ω3Tω^1=01×3 and ω1Tv2=0. Points c, d, p1, and p3 are located on one plane, which passes through points p and q and is perpendicular to the twist ξ1. Therefore, the identity of Eq. (29) is always established. For Eq. (32), there are two cases here, namely, the unique solution or an infinite number of solutions, as shown in Fig.7(a) and 7(b), respectively. For the unique solution of special posture, both transition points c and d are tangent points, and both ξ1 and ξ3 are on opposite sides of ξ2, as shown in Fig.7(a). Let δ1=pp3, δ3=qp1, and p13=p1p3, where δ1 represents the distance between the points p and p3, δ3 represents the distance between the points q and p1, and p13 represents the difference between the vectors p1 and p3. When p13v2v2Tp13=δ1+δ3 is satisfied, it means that there is a unique solution; otherwise, there is an infinite number of solutions. The position solutions of the two tangent points c and d have the most critical selections. The solution for the position of point c is used as an example, as shown in Fig.8.
Fig.7 Solution of RTR satisfying ω1ω3 and ω1v2. (a) Unique solution of category 1, (b) infinite number of solutions of category 1.

Full size|PPT slide

Fig.8 Solution for the position of point c.

Full size|PPT slide

As seen from Fig.8, point c is the tangent point of circle C3 and twist ξ2. Let m=p3p, the vector m represents the difference between the vectors p3 and p, and the projection of the vector m on ξ2 is v2v2Tm. Thus, m=mv2v2Tm can be obtained. Since the tangent point of a line and a circle may exist in two opposite directions, the location of point c is c=p3±mmm. Similarly, the position of point d can be solved and then θ2 can be solved from θ2=dc/dcv2v2. The value of θ2 is substituted into Eq. (32) to solve θ3. θ1 can be solved by combining the value of θ2, the value of θ3, and Eq. (4).
The infinite number of solutions of θ3 is depicted as the red circular arc segments in Fig.7(b), with the inverse solution of θ3 at any point on the red circular arc segments.
Category 2: ξ1ξ3 when ξ1ξ2.
This category indicates ω3Tω101×3 and ω1Tv2=0. Then Eq. (31) is transformed to
x1sinθ3+y1cosθ3+z1=0.
θ3 can be solved by combining the above equation and the trigonometric relationship. θ2 can be solved by substituting the value of θ3 into Eq. (32). θ1 can be solved by combining the value of θ2, the value of θ3, and Eq. (4).
Category 3: ξ1ξ3 when ξ1 is not perpendicular to ξ2.
This category indicates ω3Tω^1=01×3 and ω1Tv20. Then θ2 can be obtained by θ2=z1/z1λ1λ1. θ3 can be solved by substituting the value of θ2 into Eq. (32) and the trigonometric relationship. θ1 can be solved by combining the value of θ2, the value of θ3, and Eq. (4). If twists ξ1 and ξ3 intersect, the choices of points p1 and p3 should not be the point where the twists intersect.
Category 4: ξ1ξ3 when ξ1 is not perpendicular to ξ2.
This category indicates ω3Tω^101×3 and ω1Tv20. It is easy to know that the relationship between ξ2 and ξ3 in Eq. (6) is equivalent to the relationship between ξ1 and ξ2 in Eq. (1) for the RTR three-joint subproblem. Therefore, it is likely that ξ2 is not perpendicular to ξ3 in this category. If twists ξ1 and ξ3 intersect, the choices of points p1 and p3 should not be the point where the twists intersect. θ2 is replaced with sinθ3 and cosθ3 in Eq. (31) and substituted into Eq. (32) as
a1sin2θ3+a2cos2θ3+a3sinθ3cosθ3+a4sinθ3+a5cosθ3+a6=0,
where a1=λ2x12λ1x1x3, a2=λ2y12λ1y1y3, a3=2λ2x1y1 λ1x3y1λ1x1y3, a4=λ12x2+2λ2x1z1λ1λ3x1λ1x3z1, a5= λ12y2+2λ2y1z1λ1λ3y1λ1y3z1, a6=λ2z12λ1λ3z1+λ12z2. Likewise, let t=tanθ3/θ322. Then sinθ3=2t/2t(1+t2)(1+t2) and cosθ3=(1t2)/(1t2)(1+t2)(1+t2). Those are substituted into Eq. (34) as
m1t4+m2t3+m3t2+m4t+m5=0,
where m1=a2a5+a6, m2=2(a4a3), m3=2(2a1a2+a6), m4=2(a3+a4), m5=a2+a5+a6. For the above quartic equation, the solution t is easily obtained by adopting Ferrari’s method. The value of θ3 can be solved as
θ3=2arctant.
The value of θ3 is substituted into Eq. (31) to solve θ2. Similarly, θ1 can be solved by combining the value of θ2, the value of θ3, and Eq. (4).

3.4 NAG method realization for the RTT subproblem

For the RTT three-joint subproblem, it is assumed that point p moves along ξ3 by θ3 to point c and point c moves along ξ2 by θ2 to point d, as shown in Fig.9. This means that c=p+θ3v3 and d=c+θ2v2. It is obvious that points d and q are located on the circle C1 normal to ξ1. The twist ξ1 passes through point p1. This is easily accessible according to the geometric and algebraic constraints as
Fig.9 General form of the RTT three-joint subproblem.

Full size|PPT slide

ω1T(dq)=0,
qp1=dp1.
By substituting the expressions for points c and d into Eqs. (37) and (38), respectively, and squaring both sides of Eq. (38), the above two equations are transformed as follows:
x1θ2+y1θ3+z1=0,
x2θ22+y2θ32+a1θ2θ3+a2θ2+a3θ3+z2=0,
where x1=ω1Tv2, y1=ω1Tv3, z1=ω1T(pq), x2=y2=1, a1=2v3Tv2, a2=2(pp1)Tv2, a3=2(pp1)Tv3, and z2= pp12qp12.
For two arbitrary axes, ω1Tω2=0 holds if ξ1 is perpendicular to ξ2. The RTT three-joint subproblems for special configurations are explained and illustrated considering the characteristics of vertical joint axes.
Category 1: ξ1 is not perpendicular to ξ3 when ξ1ξ2.
This category indicates ω1Tv30 and ω1Tv2=0. θ3 is easily obtained through θ3=z1/z1y1y1. The value of θ3 is substituted into Eq. (40) to solve θ2. The value of θ1 can be solved by combining the value of θ2, the value of θ3, and Eq. (4).
Category 2: ξ1 is not perpendicular to ξ2 when ξ1ξ3.
This category indicates ω1Tv20 and ω1Tv3=0. θ2 is easily obtained through θ2=z1/z1x1x1. The value of θ2 is substituted into Eq. (40) to solve θ3. The value of θ1 can be solved by combining the value of θ2, the value of θ3, and Eq. (4).
Category 3: ξ1 is not perpendicular to ξ2 when ξ1 is not perpendicular to ξ3.
This category indicates ω1Tv20 and ω1Tv30. Combining Eqs. (39) and (40), θ3 is used in place of θ2 by θ2=(y1θ3+z1)/(y1θ3+z1)x1x1 as
m1θ32+m2θ3+m3=0,
where m1=x2y12+x12y2a1x1y1, m2=2x2y1z1a1x1z1 a2x1y1+a3x12, and m3=x2z12a2x1z1+x12z2. If m10, then θ3 can be solved by θ3=(m2±m224m1m3)/(m2±m224m1m3)(2m1) (2m1); if m1=0, then Eq. (41) is degraded to m2θ3+m3=0. The value of θ3 is substituted into Eq. (39) to solve θ2. The value of θ1 can be solved by combining the value of θ2, the value of θ3, and Eq. (4).
Category 4: ξ1ξ2 when ξ1ξ3.
This category indicates ω1Tv2=0 and ω1Tv3=0. Points c, d, p, and q are located on one plane, which is perpendicular to the twist ξ1. Therefore, the identity of Eq. (37) is always established. It is not possible to solve for the values of θ2 and θ3 by relying only on Eq. (40). The form of an infinite number of solutions is shown in Fig.10. The arbitrary point on the red circle C1 is the solution of the inverse kinematics.
Fig.10 Solution of RTT satisfying ω1v2 and ω1v3.

Full size|PPT slide

3.5 NAG method realization for the TRT subproblem

For the TRT three-joint subproblem, it is assumed that point p moves along ξ3 by θ3 to point c and point q moves along ξ1 by θ1 to point d, as shown in Fig.11. This means that c=p+θ3v3 and d=qθ1v1. It is obvious that points c and d are located on the circle C2 normal to ξ2. The twist ξ2 passes through point p2. This is easily accessible according to the geometric and algebraic constraints as
Fig.11 General form of the TRT three-joint subproblem.

Full size|PPT slide

ω2T(cd)=0,
cp2=dp2.
By substituting the expressions for points c and d into Eqs. (42) and (43), respectively, and squaring both sides of Eq. (43), the above two equations are transformed as follows:
x1θ1+y1θ3+z1=0,
x2θ12+y2θ32+a1θ1+a2θ3+z2=0,
where x1=ω2Tv1, y1=ω2Tv3, z1=ω2T(pq), x2=1, y2=1, a1=2(qp2)Tv1, a2=2(pp2)Tv3, and z2=pp22 qp22.
For two arbitrary axes, ω1Tω2=0 holds if ξ1 is perpendicular to ξ2. The TRT three-joint subproblems for special configurations are explained and illustrated considering the characteristics of vertical joint axes.
Category 1: ξ2 is not perpendicular to ξ3 when ξ2ξ1.
This category indicates ω2Tv30 and ω2Tv1=0. θ3 is easily obtained through θ3=z1/z1y1y1. The value of θ3 is substituted into Eq. (45) to solve θ1. The value of θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
Category 2: ξ2 is not perpendicular to ξ1 when ξ2ξ3.
This category indicates ω2Tv10 and ω2Tv3=0. θ1 is easily obtained through θ1=z1/z1x1x1. The value of θ1 is substituted into Eq. (45) to solve θ3. The value of θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
Category 3: ξ2 is not perpendicular to ξ1 when ξ2 is not perpendicular to ξ3.
This category indicates ω2Tv10 and ω2Tv30. Combining Eqs. (44) and (45), θ3 is used in place of θ1 by θ1=(y1θ3+z1)/(y1θ3+z1)x1x1 as
m1θ32+m2θ3+m3=0,
where m1=x2y12+x12y2, m2=2x2y1z1a1x1y1+a2x12, and m3=x2z12a1x1z1+x12z2. If m10, then θ3 can be solved by θ3=(m2±m224m1m3)/(m2±m224m1m3)(2m1)(2m1); on the contrary, if m1=0, then Eq. (46) is degraded to m2θ3+m3=0. The value of θ3 is substituted into Eq. (44) to solve θ1. The value of θ2 can be solved by combining the value of θ1, the value of θ3, and Eq. (4).
Category 4: ξ2ξ1 when ξ2ξ3.
This category indicates ω2Tv1=0 and ω2Tv3=0. Points c, d, p, and q are located on one plane, which is perpendicular to the twist ξ2. Therefore, the identity of Eq. (42) is always established. It is not possible to identify the values of θ1 and θ3 by relying only on Eq. (45). The form of the infinite number of solutions is shown in Fig.12. The arbitrary point on the red line segments is the inverse kinematics solution of θ3.
Fig.12 Solution of TRT satisfying ω2v1 and ω2v3.

Full size|PPT slide

3.6 NAG method realization for the TTT subproblem

For the TRT three-joint subproblem, it is assumed that point p moves along ξ3 by θ3 to point c, point q moves along ξ2 by θ2 to point d, and point d moves along ξ1 by θ1 to point q, as shown in Fig.13. Hence, it is easy to obtain the relationship equation between points p and q as
Fig.13 General form of the TTT three-joint subproblem.

Full size|PPT slide

q=p+θ1v1+θ2v2+θ3v3.
Equation (47) can be converted into the matrix form as
Vθ=Q,
where V=[v1v2v3], θ=[θ1θ2θ3]T, Q=qp, and Q represents the difference between the vectors q and p. The precondition for Eq. (48) to have a unique solution is that V is full-rank, that is, ξ1, ξ2, and ξ3 are linearly independent of one another. The solution of θ is θ=V1Q. If two axes are parallel, then V is not full-rank and there is an infinite number of solutions.

4 Results

To validate the effectiveness and practicability of the proposed NAG methods, the inverse kinematics simulations of arbitrary three-joint subproblems were implemented, and the simulation and master–slave tracking experiment based on the Huaque III minimally invasive surgical robot were carried out. Simulations were executed in MATLAB R2016b. According to the given joint motion ranges of each subproblem, 51 points were uniformly sampled to calculate the positions of the end-effector and then the NAG method was applied to calculate the joint angle values. The symbol x represents 51 integers from 1 to 51. In the simulation diagrams of joint inverse solutions, the symbol “o” represents the sample points of each joint while the symbol “+” represents the joint angles of the inverse solution. Note that the joint direction vectors need to be standardized before kinematic calculations can begin. There are several sets of joint angles of inverse solutions in simulations based on the NAG methods. The solutions that joint angles are in the angle ranges and the end posture is consistent with expected posture are screened. Then, the joint angles of inverse solutions are output and compared with sample points.

4.1 Simulations of arbitrary three-joint subproblems

4.1.1 Simulation of RRR subproblem

For the simulation of the RRR subproblem, category 4 is taken as an example to verify effectiveness of the NAG method. Three joints satisfy that ξ2 is neither parallel to ξ1 nor parallel to ξ3. In this case, the three joint axes do not intersect one another. The directions of the three joint axes are ω1=[001]T, ω2=[011]T, and ω3=[210]T. The positions of the three reference points are p1=[100]T, p2=[500]T, and p3=[050]T. The position of initial point p is p=[51010]T. The movement ranges of the three joints are determined as θ1=2π5cosxπ25, θ2=π3cosxπ25, and θ3=4π9cos(xπ25π). The sample points and joint angles of the inverse solution are shown in Fig.14. Clearly, the joint angles of the inverse solution are coincident with the sample points.
Fig.14 Sample points and joint angles of the inverse solution of RRR subproblem.

Full size|PPT slide

4.1.2 Simulation of the RRT subproblem

For the simulation of the RRT subproblem, category 4 is taken as an example to verify the effectiveness of the NAG method. Three joints satisfy that ξ2 is neither parallel to ξ1 nor perpendicular to ξ3. The directions of the three joint axes are ω1=[101]T, ω2=[011]T, and v3=[210]T. The positions of two reference points are p1=[000]T and p2=[500]T. The position of the initial point p is p=[5105]T. The movement ranges of the three joints are determined as θ1=2π5cosxπ25, θ2=π3cosxπ25, and θ3=50cos(xπ25π). The sample points and joint angles of the inverse solution are shown in Fig.15. It is easy to know that the sample points and the joint angles of the inverse solution are coincident.
Fig.15 Sample points and joint angles of the inverse solution of RRT subproblem.

Full size|PPT slide

4.1.3 Simulation of the RTR subproblem

For the simulation of the RTR subproblem, category 4 is taken as an example to verify the effectiveness of the NAG method. Three joints satisfy that ξ2 is neither parallel to ξ1 nor perpendicular to ξ3. The directions of three joint axes are ω1=[101]T, v2=[011]T, and ω3=[210]T. The positions of two reference points are p1=[000]T and p3=[050]T. The position of initial point p is p=[5105]T. The movement ranges of the three joints are determined as θ1=2π5cosxπ25, θ2=50cos(xπ25π), and θ3=π3cosxπ25. The sample points and joint angles of the inverse solution are shown in Fig.16. Clearly, the sample points and joint angles of the inverse solution are coincident.
Fig.16 Sample points and joint angles of the inverse solution of RTR subproblem.

Full size|PPT slide

4.1.4 Simulation of the RTT subproblem

For the simulation of the RTT subproblem, category 3 is taken as an example to verify the effectiveness of the NAG method. Three joints satisfy that ξ2 is neither parallel to ξ1 nor perpendicular to ξ3. The directions of the three joint axes are ω1=[101]T, v2=[011]T, and v3=[210]T. The position of reference points is p1=[000]T. The position of the initial point p is p=[5105]T. The movement ranges of the three joints are determined as θ1=2π5cosxπ25, θ2=50cos(xπ25π), and θ3=50cosxπ25. The sample points and joint angles of the inverse solution are shown in Fig.17. Apparently, the joint angles of the inverse solution are coincident with the sample points.
Fig.17 Sample points and joint angles of the inverse solution of RTT subproblem.

Full size|PPT slide

4.1.5 Simulation of the TRT subproblem

For the simulation of the TRT subproblem, category 3 is taken as an example to verify the effectiveness of the NAG method. Three joints satisfy that ξ2 is not perpendicular to ξ1 when ξ2 is not perpendicular to ξ3. The directions of three joint axes are v1=[101]T, ω2=[011]T, and v3=[210]T. The position of reference points is p2=[500]T. The position of initial point p is p=[5105]T. The movement ranges of the three joints are determined as θ1=50cos(xπ25π), θ2=2π5cosxπ25, and θ3=50cosxπ25. The sample points and joint angles of the inverse solution are shown in Fig.18. Obviously, the joint angles of the inverse solution and the sample points remain coincident.
Fig.18 Sample points and joint angles of the inverse solution of TRT subproblem.

Full size|PPT slide

4.1.6 Simulation of the TTT subproblem

For the simulation of the TTT subproblem, three joints are linearly independent of one another. The directions of the three joint axes are v1=[101]T, v2=[011]T, and v3=[210]T. The position of the initial point p is p=[5105]T. The movement ranges of the three joints are determined as θ1=50cos(xπ25π), θ2=25cosxπ25, and θ3=50cosxπ25. The sample points and joint angles of the inverse solution are shown in Fig.19. Distinctly, the joint angles of the inverse solution are coincident with the sample points.
Fig.19 Sample points and joint angles of the inverse solution of TTT subproblem.

Full size|PPT slide

4.2 Simulation of 6-DOF problem based on Huaque III surgical robot

Huaque III minimally invasive surgical robot [30] includes two instrument manipulators and one endoscopy manipulator. The instrument manipulator consists of passive joints, active joints, and a surgical instrument, as shown in Fig.20. Passive joints are used to locate the remote center of motion (RCM) at any point in space. Active joints are used to achieve rotation and translational motion around the RCM point. Surgical instrument coordinates with active joints to adjust the position and posture of the end-effector. Note that three joint axes of instrument do not intersect at one point, that is, it does not satisfy the Pieper criterion. Joints 7 and 8 are coaxial, and joints 7 and 8 are prismatic and rotary joints, respectively. Two joints can be exchanged on the premise that the order of interchanging joints does not affect the end-effector pose [31]. To conveniently solve the inverse solution, joints 7 and 8 are swapped in turn. The screw representation and reference coordinate points of each joint axis are as follows:
Fig.20 Structure diagram of the instrument manipulator of Huaque III surgical robot.

Full size|PPT slide

ω1=ω8=[000],ω2=ω3=ω4=[001],ω5=[cosα40sinα4],ω6=ω9=[010],ω7=[001],ω10=[100],
r2=[00d1],r3=[a20d1],r4=[a2+a30d1],r5=r6=r7=r9=[a2+a3+d5cosα40d1d5sinα4],r10=[a2+a3+d5cosα40d1d5sinα4a9].
The forward kinematics solution of the Huaque III surgical instrument end-effector is
gst(θ)=i=110eξ^iθigst(0),
where gst(0) and gst(θ) respectively represent the initial transformation matrix and transformation matrix at different joint angles of the tool frame. The passive joint remains stationary during the operation, and Eq. (51) can be transformed as
(i=14eξ^iθi)1gst(θ)gst1(0)=i=510eξ^iθi.
Let g1=(i=14eξ^iθi)1gst(θ)gst1(0). Thus, the above formula is converted as
g1(i=810eξ^iθi)1=i=57eξ^iθi.
Joints 5, 6, and 7 are all rotary joints, and their axes converge at a point. The homogeneous coordinate vector of the intersection point is multiplied on both sides of the above equation by right, and according to the position preservation principle, the equation can be obtained as
(i=810eξ^iθi)g11p~5=p~5,
where p~5=[r5T1]T. r5 and p~5 represent the position vector and homogeneous coordinate of the point p5. Let q~1=g11p~5, then θ8, θ9, and θ10 can be solved by the NAG method for the RRT subproblem. Next, θ5, θ6, and θ7 can be solved by the NAG method for the RRR subproblem by substituting the joint angles of θ8, θ9, and θ10 into Eq. (53). The parameter values of the minimally invasive surgical robot are d1=1000 mm, a2=500 mm, a3= 500 mm, α4=π/π44, d5=800 mm, and a9=10 mm. The angles of the passive joints are constant as θ1=200, θ2=π/π99, θ3=π/π1818, and θ4=π/π1818. The motion ranges of the joints are θ5[π/π2,2,π/π22], θ6[π/π3,3,π/π33], θ7[π,π], θ8[100,350] mm, θ9(π/π2,2,π/π22), and θ10(π/π2,2,π/π22). The motion curves of the other joints are θ5=π2sinxπ25, θ6=π3sin(x25)π25, θ7=2π9sin(x25)π25, θ8=4(x1)+100, θ9=4π9sinxπ25, and θ10=2π9sinxπ25. The sample points and joint angles of the inverse solution are shown in Fig.21. It is evident that the joint angles of the inverse solution are coincident with the sample points.
Fig.21 Sample points and joint angles of the inverse solution for Huaque III surgical robot.

Full size|PPT slide

4.3 Master–slave tracking experiment based on the Huaque III surgical robot

The surgeon operates the master manipulator on the master console to control the slave manipulator and perform a series of surgical operations (Fig.22). The two-stage approximation and compensation method [5] has relatively higher accuracy and faster compensation speed, and thus the compensation method is chosen as a contrast to the closed-form solution for the Huaque III surgical robot. The master manipulator is moved in a random curve trajectory, and the movement trajectory from the slave manipulator is recorded based on two methods. The trajectories of the master and instrument manipulators are compared in the situation where the master manipulator trajectories have been reduced to one-fourth and their tracking errors are calculated, as shown in Fig.23 and Fig.24. In Fig.23(a) and 23(b), the incremental ranges of the slave manipulator trajectory are x(15,15) mm, y(10,30) mm, and z(10,20) mm for the closed-form solution, while the incremental ranges of the slave manipulator trajectory are x(20,30) mm, y(15,5) mm, and z(15,20) mm for the compensation method. The motion ranges of the two methods are close. Additionally, the trajectories of the slave manipulator are very close to those of the master manipulator. The end-effector tracking errors of master and slave manipulators are very small. The mean and maximum errors of the master–slave tracking experiment are 0.1486 and 0.4777 mm, respectively, for the closed-form solution, while the mean and maximum errors are 0.3188 and 0.6394 mm, respectively, for the compensation method. The mean and maximum tracking errors of the closed-form solution are 53.59% and 25.29% less than that of the compensation method. The maximum tracking errors are less than the absolute positioning accuracy of the robot at 1.4 mm, which meets the control accuracy requirements of the master–slave tracking of the surgical robot.
Fig.22 Huaque III minimally invasive surgical robot.

Full size|PPT slide

Fig.23 Movement trajectories for two methods: (a) closed-form solution and (b) compensation solution.

Full size|PPT slide

Fig.24 End-effector tracking errors for two methods: (a) closed-form solution and (b) compensation solution.

Full size|PPT slide

5 Conclusions

In this paper, the NAG methods are presented, and on their basis, the general closed-form inverse kinematics for all types of three-joint subproblems are obtained. The preconditions consisting of the geometric and algebraic constraints are applied to solve the inverse kinematics of three-joint subproblems. Special postures (parallel, perpendicular, and intersect) of three-joint subproblems are also discussed and illustrated. The inverse kinematics of arbitrary three-joint subproblems in an arbitrary postural relationship can be solved by the NAG methods. The inverse kinematics simulations of all three-joint subproblems are implemented, and the inverse solutions are consistent with the given joint angles. Simulation results validate the general closed-form inverse kinematics. The simulation and master–slave tracking experiment are carried out to verify the NAG methods of the RRR and RRT subproblems based on the experimental platform of the Huaque III minimally invasive surgical robot. The simulation result shows that the inverse solutions are consistent with six sets given joint angles. The mean and maximum of the master–slave tracking experiment for the closed-form solution are 0.1486 and 0.4777 mm, respectively, while the mean and maximum of the master–slave tracking experiment for the compensation method are 0.3188 and 0.6394 mm, respectively. The mean and maximum tracking errors of the closed-form solution are 53.59% and 25.29% less than those of the compensation method. Clearly, the closed-form solution is superior to the compensation method. The general closed-form inverse kinematics are validated according to the simulation and experiment results. The arbitrary three-joint subproblems expand the Paden–Kahan subproblems, and the proposed general closed-form inverse kinematics can be combined and widely applied in series, parallel, reconfigurable, and other types of robots.

Nomenclature

Abbreviations
D–H Denavit–Harbenterg
DOF Degree-of-freedom
NAG Novel algebraic geometric
POE Product of exponential
R, T revolute joint and translational joint, respectively
RCM Remote center of motion
Variables
c, d, p, p1, p2, p3, and q Position vectors of points c, d, p, p1, p2, p3, and q, respectively
gst(0), gst(θ) Initial transformation matrix and transformation matrix at different joint angles of the tool frame, respectively
lc2 Distance between points c and p2
lij (i, j = 1, 2, 3) Distance between points pi and pj
m Difference between the vectors p3 and p
p~5 Homogeneous coordinate of point p5
q~, p~ Homogeneous coordinate of points q and p, respectively
r Position vector of the reference point r of the revolute joint axis
r5 Position vector of point p5
v Unit directional vector of the translational joint axis
θi Generalized angle of the ith joint
δ Distance between two vectors s and t, δ = ||st||
ω Unit directional vector of the revolute joint axis
ω^ Skew-symmetric matrices of ω
ξ Joint twist
ξi (i=1,2,3) Twist coordinate of the ith joint axis
ξ^i (i=1,2,3) Instantaneous joint twist of the ith joint axis

Acknowledgements

This study was supported by the Foundation for Innovative Research Groups of the National Natural Science Foundation of China (Grant No. 51521003), the National Natural Science Foundation of China (Grant No. 61803341), and the Self-planned Task of State Key Laboratory of Robotics and System (Harbin Institute of Technology) (Grant No. SKLRS202009B). No conflicts of interest exist in this paper.
1
Husty M L , Pfurner M , Schröcker H P . A new and efficient algorithm for the inverse kinematics of a general serial 6R manipulator. Mechanism and Machine Theory, 2007, 42( 1): 66– 81

DOI

2
Murray R M Li Z X Sastry S S. A Mathematical Introduction to Robotic Manipulation. Boca Raton: CRC Press, 1994

3
Niu G J , Pan B , Ai Y , Fu Y L . Intuitive control algorithm of a novel minimally invasive surgical robot. Computer Assisted Surgery, 2016, 21( sup1): 92– 101

DOI

4
Stoica A , Pisla D , Andras S , Gherman B , Gyurka B Z , Plitea N . Kinematic, workspace and singularity analysis of a new parallel robot used in minimally invasive surgery. Frontiers of Mechanical Engineering, 2013, 8( 1): 70– 79

DOI

5
Tang A L. Research on the teleoperation motion control strategy for a master-slave minimally invasive surgical robot. Dissertation for the Doctoral Degree. Shanghai: Shanghai Jiao Tong University, 2014 (in Chinese)

6
Zhang F , Teng S , Wang Y F , Guo Z J , Wang J J , Xu R L . Design of bionic goat quadruped robot mechanism and walking gait planning. International Journal of Agricultural and Biological Engineering, 2020, 13( 5): 32– 39

DOI

7
Lakhal O , Melingui A , Merzouki R . Hybrid approach for modeling and solving of kinematics of a compact bionic handling assistant manipulator. IEEE/ASME Transactions on Mechatronics, 2016, 21( 3): 1326– 1335

DOI

8
Yang H , Fang H R , Fang Y F , Li X Y . Dimensional synthesis of a novel 5-DOF reconfigurable hybrid perfusion manipulator for large-scale spherical honeycomb perfusion. Frontiers of Mechanical Engineering, 2021, 16( 1): 46– 60

DOI

9
Zhang W X , Lu S N , Ding X L . Recent development on innovation design of reconfigurable mechanisms in China. Frontiers of Mechanical Engineering, 2019, 14( 1): 15– 20

DOI

10
Kim J , Jie W , Kim H , Lee M C . Modified configuration control with potential field for inverse kinematics solution of redundant manipulator. IEEE/ASME Transactions on Mechatronics, 2021, 26( 4): 1782– 1790

DOI

11
Patil A , Kulkarni M , Aswale A . Analysis of the inverse kinematics for 5 DOF robot arm using D–H parameters. In: Proceedings of 2017 IEEE International Conference on Real-time Computing and Robotics (RCAR). Okinawa: IEEE, 2017, 688– 693

DOI

12
Xu J , Song K C , He Y , Dong Z P , Yan Y H . Inverse kinematics for 6-DOF serial manipulators with offset or reduced wrists via a hierarchical iterative algorithm. IEEE Access: Practical Innovations, Open Solutions, 2018, 6 : 52899– 52910

DOI

13
Soleimani Amiri M , Ramli R . Intelligent trajectory tracking behavior of a multi-joint robotic arm via genetic–swarm optimization for the inverse kinematic solution. Sensors, 2021, 21( 9): 3171

DOI

14
Zhou H B , Zhou S , Yu J , Zhang Z D , Liu Z Z . Trajectory optimization of pickup manipulator in obstacle environment based on improved artificial potential field method. Applied sciences, 2020, 10( 3): 935

DOI

15
Tian X M , Xu Y . Low delay control algorithm of robot arm for minimally invasive medical surgery. IEEE Access: Practical Innovations, Open Solutions, 2020, 8 : 93548– 93560

DOI

16
Xu Z H , Li S , Zhou X F , Yan W , Cheng T B , Huang D . Dynamic neural networks based kinematic control for redundant manipulators with model uncertainties. Neurocomputing, 2019, 329 : 255– 266

DOI

17
Gallardo-Alvarado J , Aguilar-Nájera C R , Casique-Rosas L , Rico-Martínez J M , Islam M N . Kinematics and dynamics of 2(3-RPS) manipulators by means of screw theory and the principle of virtual work. Mechanism and Machine Theory, 2008, 43( 10): 1281– 1294

DOI

18
Hayati S A . Robot arm geometric link parameter estimation. In: Proceedings of the 22nd IEEE Conference on Decision & Control. San Antonio: IEEE, 1983, 1477– 1483

DOI

19
Zhao R B Shi Z P Guan Y Shao Z Z Zhang Q Y Wang G H. Inverse kinematic solution of 6R robot manipulators based on screw theory and the Paden–Kahan subproblem. International Journal of Advanced Robotic Systems, 2018, 15(6): 1729881418818297

20
Paden B E. Kinematics and control of robot manipulators. Dissertation for the Doctoral Degree. Berkeley: University of California, 1985

21
Chen I M , Gao Y . Closed-form inverse kinematics solver for reconfigurable robots. In: Proceedings of 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No.01CH37164). Seoul: IEEE, 2001, 3 : 2395– 2400

DOI

22
Zhao J , Wang W D , Gao Y S , Cai H G . Generation of closed-form inverse kinematics for reconfigurable robots. Frontiers of Mechanical Engineering in China, 2008, 3( 1): 91– 96

DOI

23
Tan Y S Cheng P L Xiao A P. Solution for a new sub-problem in screw theory and its’ application in the inverse kinematics of a manipulator. Applied Mechanics and Materials, 2010, 34–35: 271– 275

24
Leoro J , Hsiao T S , Betancourt C . A new geometric subproblem to extend solvability of inverse kinematics based on screw theory for 6R robot manipulators. International Journal of Control, Automation, and Systems, 2021, 19( 1): 562– 573

DOI

25
Chen Q C , Zhu S Q , Zhang X Q . Improved inverse kinematics algorithm using screw theory for a six-DOF robot manipulator. International Journal of Advanced Robotic Systems, 2015, 12( 10): 140

DOI

26
Li W W , Zhou G B , Zhou X F , Chen Z L , Wu L , Zeng S F . Kinematics analysis of generalized SRU manipulator based on screw theory. In: Proceedings of 2018 the 3rd International Conference on Robotics and Automation Engineering (ICRAE). Guangzhou: IEEE, 2018, 160– 165

DOI

27
Wang H X Lu X Zhang Z Y Li Y X Sheng C Y Gao L. A novel second subproblem for two arbitrary axes of robots. International Journal of Advanced Robotic Systems, 2018, 15(2): 1729881418769194

28
Wang H X , Lu X , Sheng C Y , Zhang Z G , Cui W , Li Y X . General frame for arbitrary 3R subproblems based on the POE model. Robotics and Autonomous Systems, 2018, 105 : 138– 145

DOI

29
Wang Y C , Ding X L , Tang Z X , Hu C W , Xu K . A novel analytical inverse kinematics method for SSRMS-type space manipulators based on the POE formula and the Paden-Kahan subproblem. International Journal of Aerospace Engineering, 2021, 6690696

DOI

30
Song T , Pan B , Niu G J , Fu Y L . Preoperative planning algorithm for robot-assisted minimally invasive cholecystectomy combined with appendectomy. IEEE Access: Practical Innovations, Open Solutions, 2020, 8 : 177100– 177111

DOI

31
Yu L T Wang W J Wang Z Y Gu Q Wang L. Acquisition method of inverse kinematics analytical solutions for a class of robots dissatisfying the Pieper criterion. Robot, 2016, 38(4): 486– 494 (in Chinese)

Outlines

/