# A Geometric Modeling and Computing Method for Direct Kinematic Analysis of 6-4 Stewart Platforms

Authors: Ying Zhang; Xin Liu; Shimin Wei; Yaobing Wang; Xiaodong Zhang; Pei Zhang; Changchun Liang
Journal: Mathematical Problems in Engineering
 (2018)

---

## Abstract

A geometric modeling and solution procedure for direct kinematic analysis of 6-4 Stewart platforms with any link parameters is proposed based on conformal geometric algebra (CGA). Firstly, the positions of the two single spherical joints on the moving platform are formulated by the intersection, dissection, and dual of the basic entities under the frame of CGA. Secondly, a coordinate-invariant equation is derived via CGA operation in the positions of the other two pairwise spherical joints. Thirdly, the other five equations are formulated in terms of geometric constraints. Fourthly, a 32-degree univariate polynomial equation is reduced from a constructed 7 by 7 matrix which is relatively small in size by using a Gröbner-Sylvester hybrid method. Finally, a numerical example is employed to verify the solution procedure. The novelty of the paper lies in that(1) the formulation is concise and coordinate-invariant and has intrinsic geometric intuition due to the use of CGA and (2) the size of the resultant matrix is smaller than those existed.


---

## Body

## 1. Introduction

The Stewart platform [1] is a fully parallel, six-degree-of-freedom manipulator that generally consists of a base platform, a moving platform, and six limbs connected to each other in parallel. Stewart platforms have been successfully used in a wide variety of fields and industries, ranging from astronomy to flight simulators and are becoming increasingly popular in the machine-tool industry [2]. From the 1980s, Stewart platforms have attracted wide interests from researchers and engineers due to their advantages of simplicity, high stiffness, large load capacity, quick dynamic response, and excellent accuracy.The direct kinematic analysis of Stewart platforms has been considered a challenging problem, which leads naturally to a system of highly nonlinear algebraic equations with multiple solutions. There are two main approaches to solve these equations: numerical schemes and closed-form solutions. A closed-form solution provides more information about the geometric and kinematic behavior over a numerical solution, and the closed-form univariate polynomial equation has significant theoretical values as it is fundamental to many other kinematic problems. Hence obtaining a closed-form solution to the direct kinematic analysis is clearly preferred in most cases.In this paper, we will revisit the direct kinematic analysis of 6-4 Stewart platforms, four of which meet the platform pairwise, while the remaining two meet both base and platform singly. Numerous researchers [3–6] have worked on this problem. Hunt (1983) [3] wrongly stated that the maximum number of assembly modes for the problem was 24 by geometrical proof. Innocenti (1995) [4] derived a suitable set of five closure equations and solved the problem by a specifically developed elimination scheme, that is, a constructed 10 by 10 matrix. The number of the solutions is 36 in view of resultant form; however, the numerical result leads to a 32-degree polynomial equation in a single variable. Liao et al. (1995) [5] formulated this problem based on the vector method from equivalent mechanisms and obtained all the 32 solutions by constructed 10 by 10 resultant matrix. The solution procedure is complex due to numerous vector computations. Zhang et al. (2012) [6] also modeled this problem based on the trilateration method and vector method from equivalent mechanisms and the solution procedure is the same as [5]. It is concluded from the above-mentioned literature that the modeling and the solution procedure either are formulated algebraically from the equivalent mechanisms or require resultant elimination. The size of the constructed resultant matrix is all 10 by 10.Conformal geometric algebra (CGA) [7–10] is a relatively new mathematical tool for geometric representation and computation. Essentially, CGA represents various geometric entities of points, spheres, lines, planes, circles, and point pairs in a systematical hierarchy of multiple grades. More importantly, CGA provides direct algebraic operations on these geometric entities which typically lead to simple, compact, coordinate-invariant formulations and enables complicated symbolic geometric computations. The above-mentioned properties are two superior characteristics of CGA. Hence it is very efficient for geometric modeling and computation for kinematic problem of mechanisms and robotics. In recent decades, CGA has been mostly applied to solve the inverse kinematics problem of the serial mechanisms [11–14] via CGA operation of the geometric entities. In addition, Tanev [15, 16], Kim et al. [17], and Huo et al. [18] employed CGA to study the singularity analysis of PMs. Huo et al. [18] and Li et al. [19] proposed a mobility analysis approach for PMs based on geometric algebra. Zhang et al. [20, 21] and Wei et al. [22] applied CGA to solve the direct kinematics of parallel mechanisms.In this paper, we will formulate the direct kinematic analysis problem of 6-4 Stewart platform using CGA and then construct a 7 by 7 resultant using Gröbner-Sylvester hybrid method [23, 24] which finally leads to a 32-degree univariate polynomial equation without extraneous roots. The derived coordinate-invariant equation is also applicable to other Stewart platforms or parallel mechanisms whose number of spherical joints on the moving platform is equal to 4.The rest of the paper is organized as follows: In Section2, the fundamentals of CGA are introduced. In Section 3, the geometric modeling for the direct kinematic analysis of 6-4 Stewart platforms is formulated based on CGA. Section 4 proposes the elimination procedure and finally reduces a 32-degree univariate polynomial equation from a constructed 7 by 7 matrix by Gröbner-Sylvester hybrid method. In Section 5, a numerical example is provided to verify our solution procedure. Finally, conclusions and future work will be given in Section 6.


## 2. Fundamentals of Conformal Geometric Algebra

In geometric algebra, the fundamental algebraic operators are the inner product (A·B), the outer product (A∧B), and the geometric product (AB=A·B+A∧B).The 5-dimensional (5D) CGAG4,1 is derived from a 3D Euclidean space G3 and a 2D Minkowski space G1,1. CGA has five orthonormal basis vectors given by e1,e2,e3,e+,e- with the following properties:(1)e12=e22=e32=e+2=-e-2=1,ei·ej=0i≠j;i,j=1,2,3,+,-,ei∧ej=-ej∧eii,j=1,2,3,+,-,where e1,e2,e3 are the three orthonormal basis vectors in the Euclidean space and e+,e- are the two orthogonal basis vectors in Minkowski space.In addition, two null bases can now be introduced by the vectors(2)e0=12e--e+,e∞=e++e-,with the properties(3)e02=e∞2=0,e∞·e0=-1,where e0 is the conformal origin and e∞ is the conformal infinity.Blades are the basic computational elements and the basic geometric entities of the geometric algebra. The grade of a blade is simply the number of linearly independent vectors that are “wedged” together. The 5D CGA consists of blades with grades 0, 1, 2, 3, 4, and 5. A linear combination of the k-blades is called ak-vector, and a linear combination of blades with different grades is called a multivector. The blades with the maximum grade in CGA, that is, 5-blades, are called pseudoscalars and denoted by ICe∞0123,IC2=-1.According to (1)–(3), the inner (·) and outer (∧) products of two 1-vectors u,v are defined as(4)u·v=12uv+vu,u∧v=12uv-vu.As extension, the inner product of anr-blade u1∧⋯∧ur with an s-blade v1∧⋯∧vs can be defined recursively by(5)u1∧⋯∧ur·v1∧⋯∧vs=u1∧⋯∧ur·v1·v2∧⋯∧vsifr≥su1∧⋯∧ur-1·ur·v1∧⋯∧vsifr<swith(6)u1∧⋯∧ur·v1=∑i=1r-1r-iu1∧⋯∧ui-1∧ui·v1∧ui+1∧⋯∧ur,ur·v1∧⋯∧vs=∑i=1s-1i-1v1∧⋯∧vi-1∧ur·vi∧vi+1∧⋯∧vs.We define the dualX∗of a multivector X by(7)X∗=XIC-1=-XIC,where IC-1 is the inverse of IC and is equal to -IC.CGA provides the representation of primitive geometric entities for intuitive expression. The primitive geometric entities in CGA consist of spheres, points, lines, planes, circles, and point pairs. The representation of the geometric entities with respect to the inner product null space (IPNS) and the one with respect to the outer product null space are, respectively, listed in Table1. These two representations are dual to each other and therefore can be converted by dual operator. In Table 1, the small bold character represents the point or vector in the Euclidean space, while the bold underlined character represents the basic geometric entity in the conformal space. For more information, please refer to [9, 10].Table 1
List of conformal geometric entities.
Entity Representation Grade Dual representation Grade Point P _ = p + 1 2 p 2 e ∞ + e 0 1 P _ ∗ = S _ 1 ∧ S _ 2 ∧ S _ 3 ∧ S _ 4 4 Sphere S _ = p + 1 2 p 2 - ρ 2 e ∞ + e 0 1 S _ ∗ = P _ 1 ∧ P _ 2 ∧ P _ 3 ∧ P _ 4 4 Plane π _ = n + d e ∞ 1 π _ ∗ = e ∞ ∧ P _ 1 ∧ P _ 2 ∧ P _ 3 4 Line L _ = π _ 1 ∧ π _ 2 2 L _ ∗ = e ∞ ∧ P _ 1 ∧ P _ 2 3 Circle C _ = S _ 1 ∧ S _ 2 2 C _ ∗ = P _ 1 ∧ P _ 2 ∧ P _ 3 3 Point pair P _ p = S _ 1 ∧ S _ 2 ∧ S _ 3 3 P _ p ∗ = P _ 1 ∧ P _ 2 2According to (1)–(3), the inner product between two conformal points P_1,P_2 is calculated as(8)P_1·P_2=p1+12p12e∞+e0·p2+12p22e∞+e0=-12p1-p22=-12d122,where d12 denotes the Euclidean distance between the two points.From (8), we have P_·P_=0.In the next section, we will formulate the direct kinematics of 6-4 Stewart platforms via CGA operation and derive the univariate polynomial equation.


## 3. Geometric Modeling for Direct Kinematics of 6-4 Stewart Platforms Based on CGA

A 6-4 Stewart platformA1A2A3A4A5A6-B1B2B3B4, shown in Figure 1, has six SPS (S: spherical joint, P: prismatic joint) legs, four of which meet the moving platform pairwise, while the remaining two meet both the base and the moving platform singly. The six limb lengths li(i=1,2,…,6) provided by P-joint in every limb are six inputs to control the position and orientation of the moving platform. For the general 6-4 Stewart platforms, the six S-joints on the base and the four S-joints on the moving platform are not restricted to lie in a plane, respectively. Let ai(i=1,2,…,6) and bi(i=1,2,3,4) denote the coordinates of the center of the S-joints Ai and Bi in the Euclidean space, respectively; let rii=1,2,…,6 denote the distance of the two S-joints Bi on the moving platform, where the coordinates bi(i=1,2,3,4) are unknown. Next, we will formulate the two single S-joints B3 and B4 on the moving platform by the intersection, dissection, and dual of the basic geometric entities under the frame of CGA.Figure 1
The geometric model of a 6-4 Stewart platform.


### 3.1. The CGA Representation of the Positions of Two Spherical JointsB3 and B4

As seen from Figure1, in the tetrahedron B1B2B3A5, the S-joint B_3 must be located on a sphere S_1 of radius r2 with its center at point B_1, a sphere S_2 of the radius r1 with the center at point B_2, and a sphere S_3 of the radius l5 with the center at point A_5. Thus, the actual locus of point B_3 must be located on the intersection of the three spheres S_1, S_2, and S_3. From the knowledge of geometry, it is known that the locus of this intersection will be a point pair B_b3. And therefore, according to Table 1, the point pair B_b3 can be formulated in CGA as(9)B_b3=S_1∧S_2∧S_3,where the three spheres S_1, S_2, and S_3 can be represented in CGA as(10)S_1=S_B1B3=B_1-12r22e∞,S_2=S_B2B3=B_2-12r12e∞,S_3=S_A5B3=A_5-12l52e∞.According to Table1, the three centers of S-joints B_1, B_2, and A_5 can be represented in CGA as(11)B_1=b1+12b12e∞+e0,B_2=b2+12b22e∞+e0,A_5=a5+12a52e∞+e0.According to (7), the dual B_b3∗ of the point pair B_b3 is represented as(12)B_b3∗=B_b3IC-1=-B_b3IC.PointB_3 is dissected from the dual of the point pair B_b3∗ in the conformal space as [21, 22](13)B_3=Tb2Avar±BvarAvarTb1,where Tb1=e∞·B_b3∗, Tb2=Tb1·B_b3∗, Avar=Tb1·Tb1, and Bvar=B_b3∗·B_b3∗. Please note that the expression of point B_3 in (13) is in its standard and normalized form; that is, the magnitude is equal to 1.For the S-jointB_4 on the moving platform, it can be seen from Figure 1 that, in the pentahedron B1B2B3B3A6, point B_4 is the intersection point of four spheres S_4, S_5, S_6, and S_7, that is, the sphere S_4 of the radius r4 with its center at point B_1, the sphere S_5 of the radius r5 with the center at point B_2, the sphere S_6 of the radius l6 with the center at point A_6, and the sphere S_7 of the radius r6 with the center at point B_3. Therefore according to Table 1, the dual of point B_4 is represented in CGA as(14)B_4∗=S_4∧S_5∧S_6∧S_7,where the four spheres S_4, S_5, S_6, and S_7 can be represented in CGA as(15)S_4=S_B1B4=B_1-12r42e∞,S_5=S_B2B4=B_2-12r52e∞,S_6=S_A6B4=A_6-12l62e∞,S_7=S_B3B4=B_3-12r62e∞.According to Table1, the centers of S-joint A_6 can be represented in CGA as A_6=a6+(1/2)a62e∞+e0.PointB_4 is reduced from (7) and (14) as(16)B_4=B_4∗IC-1=-B_4∗IC=-S_7·B_b4∗,where B_b4∗=-S_4∧S_5∧S_6IC and is dual to the point pair B_b4, which is generated by the intersection of three spheres S_4,  S_5, and S_6.Please note the expression of pointB_4 is not in its standard and normalized form; that is, the magnitude is not equal to 1 and we can obtain its standard and normalized form by dividing (16) using its magnitude (-e∞·B_4).


### 3.2. The Derivation of the Coordinate-Invariant Polynomial Equation

According to (8), we can readily obtain(17)B_4·B_4=0⟺-S_7·B_b4∗·-S_7·B_b4∗=0.However, due to the volume sign of the tetrahedronB1B2B3B4, it will lead to the symmetric extraneous roots with respect to the plane B1B2B3 if we obtain the coordinate-invariant equation only from (17). In order to avoid the extraneous roots, we will use its volume of the tetrahedron B1B2B3B4 to geometrically model the direct kinematics of 6-4 Stewart platforms.The volume of the tetrahedronB1B2B3B4 is expressed in CGA as [7](18)V=-e∞∧B_1∧B_2∧B_3∧B_4IC,where V is a known scalar and in fact V is six times the volume of the tetrahedron B1B2B3B4. When four points Bii=1,2,3,4 on the moving platform lie in the same plane, V=0; if not, V may be positive or negative depending on point B4 locating above or below the plane B1B2B3.Multiplying both sides of (18) with a scalar V0=-(e∞∧A_6∧B_1∧B_2∧B_3)IC and then expanding it according to (5), we obtain(19)V∗V0=-B_3·A_6S0+Cvar,where(20)V0=-e∞∧A_6∧B_1∧B_2∧B_3IC=-B_3·e∞∧A_6∧B_1∧B_2IC,Cvar=-S1-B_1·A_6S2+B_2·A_6S3-12l62S4,V2=14-r12r22r32-r14r42+r12r22r42+r12r32r42-r12r44+r12r22r52-r24r52+r22r32r52+r12r42r52+r22r42r52-r32r42r52-r22r54+r12r32r62+r22r32r62-r34r62-r32r64+r12r42r62-r22r42r62+r32r42r62-r12r52r62+r22r52r62+r32r52r62,S0=14-r12r32-r22r32+r34-r12r42+r22r42-r32r42+r12r52-r22r52-r32r52+2r32r62,S1=18-2r12r22r32-r14r42+r12r22r42+r12r32r42+r12r22r52-r24r52+r22r32r52+r12r32r62+r22r32r62-r34r62,S2=14r14-r12r22-r12r32+2r12r42-r12r52-r22r52+r32r52-r12r62+r22r62-r32r62,S3=14r12r22-r24+r22r32+r12r42+r22r42-r32r42-2r22r52-r12r62+r22r62+r32r62,S4=14r14-2r12r22+r24-2r12r32-2r22r32+r34.By transposing and combining the terms in (19), we have(21)B_3·N=Cvar,where N=-V∗(e∧A_6∧B_1∧B_2)IC+S0∗A_6.Substituting (13) into (21) and then expanding (21), we have(22)±BvarTb1·NAvar=Cvar-Tb2·NAvar.Taking the square of both sides of (22) and combining terms, we obtain(23)Tb2·N2-BvarTb1·N2Avar2-2CvarTb2·NAvar+Cvar2=0.Simplifying (23) by using (1)–(5) and taking only the numerator, we have(24)Evar-BvarDvar-2CvarTb2·N+AvarCvar2=0,where Tb2·N2-BvarTb1·N2=AvarEvar-BvarDvar, Dvar=N·N, and Evar=B_b3∗∧N·B_b3∗∧N. The detailed expansion of the term Tb2·N2-BvarTb1·N2 is given in the appendix.The derivation of (24) is coordinate-invariant due to the use of CGA, and (24) depends on only the design parameters, the inputs, and the positions of points B1 and B2.


### 3.3. The Derivation of the Other Five Constraint Equations

Equation (24) is the first constraint equation in the positions of two pairwise S-joints B1 and B2 on the moving platform. According to the limb length and (8), the other five constraint equations can be formulated as(25)B_1·A_1=-12l12,(26)B_1·A_2=-12l22,(27)B_2·A_3=-12l32,(28)B_2·A_4=-12l42,(29)B_1·B_2=-12r32.Equations (24)–(29) are the six constraint equations for direct kinematics of 6-4 Stewart platforms. In next section, we will derive a univariate high-degree polynomial equation for this problem by using Gröbner-Sylvester hybrid method [23, 24].


## 3.1. The CGA Representation of the Positions of Two Spherical JointsB3 and B4

As seen from Figure1, in the tetrahedron B1B2B3A5, the S-joint B_3 must be located on a sphere S_1 of radius r2 with its center at point B_1, a sphere S_2 of the radius r1 with the center at point B_2, and a sphere S_3 of the radius l5 with the center at point A_5. Thus, the actual locus of point B_3 must be located on the intersection of the three spheres S_1, S_2, and S_3. From the knowledge of geometry, it is known that the locus of this intersection will be a point pair B_b3. And therefore, according to Table 1, the point pair B_b3 can be formulated in CGA as(9)B_b3=S_1∧S_2∧S_3,where the three spheres S_1, S_2, and S_3 can be represented in CGA as(10)S_1=S_B1B3=B_1-12r22e∞,S_2=S_B2B3=B_2-12r12e∞,S_3=S_A5B3=A_5-12l52e∞.According to Table1, the three centers of S-joints B_1, B_2, and A_5 can be represented in CGA as(11)B_1=b1+12b12e∞+e0,B_2=b2+12b22e∞+e0,A_5=a5+12a52e∞+e0.According to (7), the dual B_b3∗ of the point pair B_b3 is represented as(12)B_b3∗=B_b3IC-1=-B_b3IC.PointB_3 is dissected from the dual of the point pair B_b3∗ in the conformal space as [21, 22](13)B_3=Tb2Avar±BvarAvarTb1,where Tb1=e∞·B_b3∗, Tb2=Tb1·B_b3∗, Avar=Tb1·Tb1, and Bvar=B_b3∗·B_b3∗. Please note that the expression of point B_3 in (13) is in its standard and normalized form; that is, the magnitude is equal to 1.For the S-jointB_4 on the moving platform, it can be seen from Figure 1 that, in the pentahedron B1B2B3B3A6, point B_4 is the intersection point of four spheres S_4, S_5, S_6, and S_7, that is, the sphere S_4 of the radius r4 with its center at point B_1, the sphere S_5 of the radius r5 with the center at point B_2, the sphere S_6 of the radius l6 with the center at point A_6, and the sphere S_7 of the radius r6 with the center at point B_3. Therefore according to Table 1, the dual of point B_4 is represented in CGA as(14)B_4∗=S_4∧S_5∧S_6∧S_7,where the four spheres S_4, S_5, S_6, and S_7 can be represented in CGA as(15)S_4=S_B1B4=B_1-12r42e∞,S_5=S_B2B4=B_2-12r52e∞,S_6=S_A6B4=A_6-12l62e∞,S_7=S_B3B4=B_3-12r62e∞.According to Table1, the centers of S-joint A_6 can be represented in CGA as A_6=a6+(1/2)a62e∞+e0.PointB_4 is reduced from (7) and (14) as(16)B_4=B_4∗IC-1=-B_4∗IC=-S_7·B_b4∗,where B_b4∗=-S_4∧S_5∧S_6IC and is dual to the point pair B_b4, which is generated by the intersection of three spheres S_4,  S_5, and S_6.Please note the expression of pointB_4 is not in its standard and normalized form; that is, the magnitude is not equal to 1 and we can obtain its standard and normalized form by dividing (16) using its magnitude (-e∞·B_4).


## 3.2. The Derivation of the Coordinate-Invariant Polynomial Equation

According to (8), we can readily obtain(17)B_4·B_4=0⟺-S_7·B_b4∗·-S_7·B_b4∗=0.However, due to the volume sign of the tetrahedronB1B2B3B4, it will lead to the symmetric extraneous roots with respect to the plane B1B2B3 if we obtain the coordinate-invariant equation only from (17). In order to avoid the extraneous roots, we will use its volume of the tetrahedron B1B2B3B4 to geometrically model the direct kinematics of 6-4 Stewart platforms.The volume of the tetrahedronB1B2B3B4 is expressed in CGA as [7](18)V=-e∞∧B_1∧B_2∧B_3∧B_4IC,where V is a known scalar and in fact V is six times the volume of the tetrahedron B1B2B3B4. When four points Bii=1,2,3,4 on the moving platform lie in the same plane, V=0; if not, V may be positive or negative depending on point B4 locating above or below the plane B1B2B3.Multiplying both sides of (18) with a scalar V0=-(e∞∧A_6∧B_1∧B_2∧B_3)IC and then expanding it according to (5), we obtain(19)V∗V0=-B_3·A_6S0+Cvar,where(20)V0=-e∞∧A_6∧B_1∧B_2∧B_3IC=-B_3·e∞∧A_6∧B_1∧B_2IC,Cvar=-S1-B_1·A_6S2+B_2·A_6S3-12l62S4,V2=14-r12r22r32-r14r42+r12r22r42+r12r32r42-r12r44+r12r22r52-r24r52+r22r32r52+r12r42r52+r22r42r52-r32r42r52-r22r54+r12r32r62+r22r32r62-r34r62-r32r64+r12r42r62-r22r42r62+r32r42r62-r12r52r62+r22r52r62+r32r52r62,S0=14-r12r32-r22r32+r34-r12r42+r22r42-r32r42+r12r52-r22r52-r32r52+2r32r62,S1=18-2r12r22r32-r14r42+r12r22r42+r12r32r42+r12r22r52-r24r52+r22r32r52+r12r32r62+r22r32r62-r34r62,S2=14r14-r12r22-r12r32+2r12r42-r12r52-r22r52+r32r52-r12r62+r22r62-r32r62,S3=14r12r22-r24+r22r32+r12r42+r22r42-r32r42-2r22r52-r12r62+r22r62+r32r62,S4=14r14-2r12r22+r24-2r12r32-2r22r32+r34.By transposing and combining the terms in (19), we have(21)B_3·N=Cvar,where N=-V∗(e∧A_6∧B_1∧B_2)IC+S0∗A_6.Substituting (13) into (21) and then expanding (21), we have(22)±BvarTb1·NAvar=Cvar-Tb2·NAvar.Taking the square of both sides of (22) and combining terms, we obtain(23)Tb2·N2-BvarTb1·N2Avar2-2CvarTb2·NAvar+Cvar2=0.Simplifying (23) by using (1)–(5) and taking only the numerator, we have(24)Evar-BvarDvar-2CvarTb2·N+AvarCvar2=0,where Tb2·N2-BvarTb1·N2=AvarEvar-BvarDvar, Dvar=N·N, and Evar=B_b3∗∧N·B_b3∗∧N. The detailed expansion of the term Tb2·N2-BvarTb1·N2 is given in the appendix.The derivation of (24) is coordinate-invariant due to the use of CGA, and (24) depends on only the design parameters, the inputs, and the positions of points B1 and B2.


## 3.3. The Derivation of the Other Five Constraint Equations

Equation (24) is the first constraint equation in the positions of two pairwise S-joints B1 and B2 on the moving platform. According to the limb length and (8), the other five constraint equations can be formulated as(25)B_1·A_1=-12l12,(26)B_1·A_2=-12l22,(27)B_2·A_3=-12l32,(28)B_2·A_4=-12l42,(29)B_1·B_2=-12r32.Equations (24)–(29) are the six constraint equations for direct kinematics of 6-4 Stewart platforms. In next section, we will derive a univariate high-degree polynomial equation for this problem by using Gröbner-Sylvester hybrid method [23, 24].


## 4. Solution Procedure

### 4.1. An Univariate Equation by Using the Gröbner-Sylvester Hybrid Method

In this section, the main aim is to obtain the univariate high-degree polynomial equation, from which the solutions of direct kinematics of 6-4 Stewart platforms can be obtained. In order to get the position of the four S-joints on the moving platform, first of all, we attach a reference coordinate frameO-XYZ with its origin O anywhere, and let aiaxi,ayi,aziTi=1,…,6 denote the coordinate of the S-joint Ai and bibxi,byi,bziTi=1,…,4 denote the coordinate of the S-joint Bi in the reference frame. And therefore, (24)–(29) are six constraint equations in variables bx1,  by1,  bz1,  bx2,  by2,  bz2.For (24)–(29), changing the exponent of the three variables bx1, by1, and bz1 four times the original one and using the Gröbner basis theory under the degree reverse lexicographic term ordering with bx14>by14>bz14>bx2>by2>bz2 yield a Gröbner basis with 15 polynomials with the suppressed variable bz2 as follows:(30)gb1=g11,bx2_,by2,gb2=g21,by2,by22_,gb3=g31,bx1_,bz1,gb4=g41,bz1,by2,by1by2,by2bz1_,gb6=g61,by12_,bz1,bz12,gb11=g111,by1,bz1,by2,by1bz1,by2bz1,bz12,by1bz12_,gb14=g141,by1,bz1,by2,by1bz1,by2bz1,bz12,bz13_,gb15=g151,by1,bz1,by2,by1bz1,by2bz1,bz12,by2bz12_,gbi=gi1,by1,bz1,by2,by1bz1,by2bz1,bz12i=5,7–10,12,13,where gi(1,by1,…)(i=1,2,…,15)means the polynomial of the product terms in the bracket, of which the coefficients are comprised of products of power in the variable bz2 and real constants depending on the link parameters and inputs only.By analyzing the bases in (30), we will notice that in gbi(i=1–4,6,11,14,15), the product terms underlined only exist in their own bases, and their coefficients are real constants depending on the link parameters and inputs only. And therefore when we set up the matrix form equation, we only need other 7 polynomials to construct the following equation due to no effect on the solution procedure after deleting gbi(i=1–4,6,11,14,15):(31)G1,by1,bz1,by2,by1bz1,by2bz1,bz12T=0,where G is a 7 by 7 matrix, of which the elements are polynomials in bz2.The vanishing of the determinant of the coefficient matrixG gives necessary condition for polynomials (30) to have common solutions; that is, (24)–(29) have common solutions, so we can get an equation in bz2:(32)G=0,where G is the determinant of the matrix G.By expanding each element of the matrixG, we can get the degrees in bz2 as shown below:(33)2122×1×9845000985400098441009844001108440009944000.Therefore expanding (32), we can obtain an equation of the highest degree 1+5+5+1+1+10+9=32 in bz2 as follows:(34)∑i=032cibz2i=0,where ci are real constants depending on the link parameters and inputs only.


### 4.2. Back Substitution

Solving (34), all the 32 solutions for bz2 can be gotten. In (31), we choose any 6 of 7 equations and substitute the 32 solutions of bz2 into the linear system; using the Cramer’s rule, we can obtain the corresponding values of by1, bz1, and by2 by solving the system linearly. And substitute the 32 solutions of bz2 into gb1 and gb3, we can obtain the values of bx1 and bx2, respectively. Now the coordinates of two S-joints B1 and B2 are all obtained.For the coordinates of S-jointB3, it cannot be determined only in terms of (13) after substituting the coordinates of two S-joint B1 and B2. The choice of the positive or negative sign can be obtained from the ratio of two terms Cvar-Tb2·N/Avar and BvarTb1·N/Avar. If the ratio is equal to 1, we choose the positive sign and vice versa. If both the two terms are equal to 0, we choose the sign depending on whether the term Bvar equals 0. If the term Bvar equals 0, we can choose any sign and it will reduce to the same results. If the term Bvar is not equal to 0, we determine the sign by making sure that the value of (-e∞·B_4) is not equal to 0. After we choose the right sign in (13), we can obtain the coordinates of point B3. The coordinates of the S-joint B4 can be obtained from (16) by dividing its magnitude (-e∞·B_4) after substituting the coordinates of the joints B1, B2, and B3.


## 4.1. An Univariate Equation by Using the Gröbner-Sylvester Hybrid Method

In this section, the main aim is to obtain the univariate high-degree polynomial equation, from which the solutions of direct kinematics of 6-4 Stewart platforms can be obtained. In order to get the position of the four S-joints on the moving platform, first of all, we attach a reference coordinate frameO-XYZ with its origin O anywhere, and let aiaxi,ayi,aziTi=1,…,6 denote the coordinate of the S-joint Ai and bibxi,byi,bziTi=1,…,4 denote the coordinate of the S-joint Bi in the reference frame. And therefore, (24)–(29) are six constraint equations in variables bx1,  by1,  bz1,  bx2,  by2,  bz2.For (24)–(29), changing the exponent of the three variables bx1, by1, and bz1 four times the original one and using the Gröbner basis theory under the degree reverse lexicographic term ordering with bx14>by14>bz14>bx2>by2>bz2 yield a Gröbner basis with 15 polynomials with the suppressed variable bz2 as follows:(30)gb1=g11,bx2_,by2,gb2=g21,by2,by22_,gb3=g31,bx1_,bz1,gb4=g41,bz1,by2,by1by2,by2bz1_,gb6=g61,by12_,bz1,bz12,gb11=g111,by1,bz1,by2,by1bz1,by2bz1,bz12,by1bz12_,gb14=g141,by1,bz1,by2,by1bz1,by2bz1,bz12,bz13_,gb15=g151,by1,bz1,by2,by1bz1,by2bz1,bz12,by2bz12_,gbi=gi1,by1,bz1,by2,by1bz1,by2bz1,bz12i=5,7–10,12,13,where gi(1,by1,…)(i=1,2,…,15)means the polynomial of the product terms in the bracket, of which the coefficients are comprised of products of power in the variable bz2 and real constants depending on the link parameters and inputs only.By analyzing the bases in (30), we will notice that in gbi(i=1–4,6,11,14,15), the product terms underlined only exist in their own bases, and their coefficients are real constants depending on the link parameters and inputs only. And therefore when we set up the matrix form equation, we only need other 7 polynomials to construct the following equation due to no effect on the solution procedure after deleting gbi(i=1–4,6,11,14,15):(31)G1,by1,bz1,by2,by1bz1,by2bz1,bz12T=0,where G is a 7 by 7 matrix, of which the elements are polynomials in bz2.The vanishing of the determinant of the coefficient matrixG gives necessary condition for polynomials (30) to have common solutions; that is, (24)–(29) have common solutions, so we can get an equation in bz2:(32)G=0,where G is the determinant of the matrix G.By expanding each element of the matrixG, we can get the degrees in bz2 as shown below:(33)2122×1×9845000985400098441009844001108440009944000.Therefore expanding (32), we can obtain an equation of the highest degree 1+5+5+1+1+10+9=32 in bz2 as follows:(34)∑i=032cibz2i=0,where ci are real constants depending on the link parameters and inputs only.


## 4.2. Back Substitution

Solving (34), all the 32 solutions for bz2 can be gotten. In (31), we choose any 6 of 7 equations and substitute the 32 solutions of bz2 into the linear system; using the Cramer’s rule, we can obtain the corresponding values of by1, bz1, and by2 by solving the system linearly. And substitute the 32 solutions of bz2 into gb1 and gb3, we can obtain the values of bx1 and bx2, respectively. Now the coordinates of two S-joints B1 and B2 are all obtained.For the coordinates of S-jointB3, it cannot be determined only in terms of (13) after substituting the coordinates of two S-joint B1 and B2. The choice of the positive or negative sign can be obtained from the ratio of two terms Cvar-Tb2·N/Avar and BvarTb1·N/Avar. If the ratio is equal to 1, we choose the positive sign and vice versa. If both the two terms are equal to 0, we choose the sign depending on whether the term Bvar equals 0. If the term Bvar equals 0, we can choose any sign and it will reduce to the same results. If the term Bvar is not equal to 0, we determine the sign by making sure that the value of (-e∞·B_4) is not equal to 0. After we choose the right sign in (13), we can obtain the coordinates of point B3. The coordinates of the S-joint B4 can be obtained from (16) by dividing its magnitude (-e∞·B_4) after substituting the coordinates of the joints B1, B2, and B3.


## 5. Numerical Example

In order to validate the solution procedure, the link parameters and inputs of the numerical example are given in Table2 and are the same as [6]. Due to the space limitation, the real solutions are only given in Table 3. The computation time of the closed-form solution is just about 0.3 s in Mathematica 11.0 running on a PC with Intel Core i7-6700 CPU @ 3.4 GHz and 8 GB RAM. The approach is very efficient.Table 2
Input data.
O-X-Y-Z A 1 A 2 A 3 A 4 A 5 A 6 a i x 0 5 −2 −3 6 −3 a i y 0 0 4 −1 −2 5 a i z 0 1 −1 1 2 −1 The distancesri between the S-joints Bi r 1 = 2 6 ,   r 2 = 1 ,   r 3 = 21 ,   r 4 = 69 ,   r 5 = 4 ,   r 6 = 6 2 The lengths of six limbsli l 1 = 5.74 ,   l 2 = 3.32 ,   l 3 = 4.58 ,   l 4 = 5.39 ,   l 5 = 4.69 ,   l 6 = 4.58Table 3
Ten real solutions.
i  B 1 B 2 B 3 B 4 1 X 3.9672 1.6694 3.2853 −1.2546 Y 0.4233 1.6113 0.5543 0.9734 Z 4.1267 0.3440 4.8464 −2.3100 2 X 3.9844 0.0656 4.0347 −3.9222 Y 0.8633 2.9776 0.9909 3.2402 Z 4.0407 2.9579 5.0312 3.1266 3 X 3.9990 −0.0514 3.9757 −4.0473 Y 1.1023 3.0297 1.0191 2.8821 Z 3.9674 3.0296 4.9636 2.9236 4 X 4.0646 −0.2895 4.5438 −3.1386 Y 1.7833 3.1288 2.3513 5.9173 Z 3.6396 3.1583 2.9704 3.4851 5 X 4.1190 1.6609 4.9908 −0.2122 Y 2.1540 1.3125 2.4709 2.5765 Z 3.3678 −0.1071 2.9944 −3.7077 6 X 4.6080 0.4144 4.8572 −3.4566 Y 3.2959 2.8064 2.3558 1.8759 Z 0.9226 2.7044 0.6897 2.3178 7 X 5.2094 1.6165 5.3389 −2.2620 Y 1.2109 1.7665 0.2194 1.2649 Z −2.0842 0.7055 −2.0784 1.5457 8 ⁡ X 5.2173 1.6477 5.8529 0.0286 Y −1.1033 1.2742 −0.3823 3.7367 Z −2.1238 −0.5095 −2.3997 2.1950 9 X 5.2341 0.9164 5.1481 −2.3352 Y −0.8230 0.7105 −1.7370 1.8885 Z −2.2078 −2.2846 −2.6045 −4.2944 10 X 5.2535 0.7010 5.5092 −2.9281 Y 0.1857 0.64471 0.9000 0.4219 Z −2.3051 −2.5567 −1.6533 −0.8893


## 6. Conclusion

The paper has proposed a CGA-based formulation and solution procedure for the direct kinematic analysis of 6-4 Stewart platforms with any link parameters. Thanks to the intuitiveness of CGA, the representations of the positions of two single spherical joints have explicit geometric meaning. A coordinate-invariant polynomial equation was derived via CGA operation and it is feasible to other Stewart platforms or parallel mechanisms whose number of spherical joints on the moving platform is equal to 4. The univariate polynomial equation has been derived by constructing a 7 by 7 resultant matrix which is more compact and smaller than those published in the literature. Compared with the previous methods in the literature, the main contribution of the paper lies in that the formulation has geometric meaning due to the intuitiveness of CGA and, in addition, the size of the matrix is smaller than those existed. In future, we will extend this approach to the direct kinematics of other Stewart platforms or complicated parallel mechanisms.



---

*Source: 6245341-2018-02-26.xml*