A geometric algebra approach to determine motion

82 downloads 0 Views 4MB Size Report
tions/constraints, mobility and singularity of parallel mechanisms mainly .... entities such as point, line, plane and their geometric relations by CGA and ... A non-degenerate geometric algebra of (p + q)-D space can be denoted as Gp,q ... and infinity of 3D are defined as e0 and e∞ respectively, which have the ... L = π1 ∧ π2.
Mechanism and Machine Theory 116 (2017) 273–293

Contents lists available at ScienceDirect

Mechanism and Machine Theory journal homepage: www.elsevier.com/locate/mechmachtheory

Research paper

A geometric algebra approach to determine motion/constraint, mobility and singularity of parallel mechanism Xinming Huo, Tao Sun∗, Yimin Song Key Laboratory of Mechanism Theory and Equipment Design of Ministry of Education, Tianjin University, Tianjin 300354, China

a r t i c l e

i n f o

Article history: Received 22 June 2016 Revised 31 May 2017 Accepted 1 June 2017

Keywords: Parallel mechanism Kinematics Geometric algebra Constraint Mobility Singularity

a b s t r a c t The crucial procedure of mobility and singularity identification of parallel mechanisms is widely recognized as how to determine their motions (constraints) concisely and visually. In this paper, we propose a geometric algebra (GA) based approach to determine the motions/constraints, mobility and singularity of parallel mechanisms mainly utilizing the geometric and algebraic relations. Firstly, the motions, constraints and their relations are represented by conformal geometric algebra (CGA) formulas in a concise form by employing the characterized geometric elements with G4,1 . Secondly, the mobility of parallel mechanism, including its number and property and the axes of motions, not only at origin configuration but also in the prescribed workspace, is obtained by the procedure proposed in this paper. Thirdly, the singularity of parallel mechanism is identified by the two indices proposed in this paper with shuffle and outer products. Finally, a typical example is given to illustrate the motions/constraints, mobility and singularity analysis. This approach is beneficial to kinematic analysis and optimal design of parallel mechanisms, especially for which would be carried out in automatic and visual manner using computer programming languages. © 2017 Elsevier Ltd. All rights reserved.

1. Introduction The first step to analyze parallel mechanisms is to know their mobility, namely the degree of freedom (DoF), including the number and property such as rotation, translation or a combination of both. In the last more than 150 years, sustained efforts have been made to find approach or formula for an efficient and concise calculation of mobility or DoF of any rigid body mechanism [1–3]. There are several dozens of approaches or formulas with various forms presented in the literature, which have been reviewed critically by setting up their origins, similarities and limitations in Ref. [4]. As defined in IFToMM, DoF is the number of independent coordinates needed to define the configuration of a kinematic chain or mechanism [5]. In general, it represents the independent motions except those restricted by the linear-independent constraints of a mechanism. Hence, the number of DoF can be obtained by removing the number of all constraints from the DoF of all moving components of a mechanism, while the constraints mainly depend on the number and type of kinematic joints and their connecting formats and interactive relations [6]. The property of DoF is achieved by discussing all linear-independent constraints imposed on the output of a kinematic chain or a mechanism. In addition, to display the axes of motions is also the important content of mobility analysis except for the number and property. From this point, the essence to determine DoF of any rigid body mechanism is to obtain the relation between motions and constraints of the mechanism [7,8]. ∗

Corresponding author. E-mail addresses: [email protected], [email protected] (T. Sun).

http://dx.doi.org/10.1016/j.mechmachtheory.2017.06.005 0094-114X/© 2017 Elsevier Ltd. All rights reserved.

274

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

Except for particular parallel mechanisms such as metamorphic mechanisms [9], the mobility number and property of a valid parallel mechanism should remain unchanged over prescribed workspace. However, a parallel mechanism may gain or lose one or more DoFs at its singular configurations [10,11]. In consequence, the singular configurations must be identified and avoided in the kinematic analysis and design of parallel mechanisms. Literature review shows that intensive investigations have been carried out in the past few decades to achieve this goal [12,13]. In general, the singularity of parallel mechanisms can be classified into three types [14]. For the first type of singularity, a parallel mechanism will lose one or more DoFs, which implies that the moving platform becomes immovable in some directions regardless of actuated joint inputs. For the second type of singularity, a parallel mechanism will gain one or more DoFs, which means that the moving platform has uncontrolled movement even all actuated joints are locked. The third type of singularity are defined as the combination of the first and second types of singularity. These singular configurations can be identified by means of analytical, numerical or geometrical approaches [15–17]. Since the overall Jacobian matrix includes the information of both actuations and constraints imposed upon the moving platform, we can directly distinguish the singularity of the overall Jacobian matrix to identify the singular configurations of parallel mechanisms [18]. This approach and its extensions have been applied successfully in the singularity identification of numerous parallel mechanisms [19,20]. It is worth noting that the key point of this approach is to formulate overall Jacobian matrix by exploiting reciprocal property of motions and constraints within each limb. As mentioned above, the mobility analysis and singularity identification of parallel mechanisms require efficient and concise determination of their motions and constraints. It is known to all that reciprocal property exists between motions and constraints, namely the constrained force (couple) does not work on the rotation (translation) according to the mechanics principle [21]. The motion of parallel mechanism is usually described by a line that represents the motion axis. And the constraint of parallel mechanism is characterized by an action line that satisfies the reciprocal property of motions and constraints. The approaches for determining motions and constraints can be roughly classified into two categories in terms of the observational method and the numerical method [22]. The first category involves seeking the unknown constraints (motions) from the known motions (constraints) merely by observation [23]. For instance, if the motion axes of three known motions are intersected at one point, it is easy to obtain that the corresponding action lines of the three unknown constraints should pass through the same point in order to satisfy the reciprocal property of motions and constraints. It is accurate and efficient but mainly depends on experience. By setting up the matrix composed of all actuations and constraints, the method falling into the second category is to find a null basis vector for the matrix. The core idea is to solve vector equations formulated by the reciprocal property of motions and constraints. The available algorithms include the simplest row echelon, Gram-Schmidt orthogonalization, homogeneous coordinate transformation, the augmented matrix, Gauss Seidel elimination and singular value decomposition [24–27]. Comparing with the observational method, this method converts the issue into a typical mathematical problem, which is able to find the unknown constraints (motions) in a general and systematical way. Whereas, it is pointed out that this method involves high-dimensional matrix calculation and is time consuming for the common situations without screw motions and constraints. Moreover, in most cases, the solutions of these equations are difficult to transfer into motions or constraints with clear physical meaning visually, which is important for illustrating the schematic diagram of parallel mechanism in a visual manner [28]. It is concluded from above-mentioned literature that the descriptions of motions and constraints are expected in visual and concise geometric form whereas the computation of them have to resort to efficient algebraic calculation. The existing approaches deal with this issue merely from geometric or algebraic perspectives, which would inevitably cause problems that does not simultaneously consider the efficient algebraic calculation and visual geometric representation of motions and constraints. Furthermore, to find a systematic and accurate solution for mobility analysis and singularity identification, a geometric algebra (GA) [29] based approach is presented in this paper. Using this approach, only by drawing some auxiliary geometric entities such as points, lines and planes, the unknown constraints (motions) from the known motions (constraints) in common cases is readily and analytically obtained depending on efficient and concise algebraic calculations of GA formulas, and meanwhile the whole procedure is considered to be carried out in a visual manner. Taking advantage of the concise calculation among geometry calculation providing by CGA, common situations of parallel mechanisms are concluded in the paper to help determine unknown motion (constraints) efficiently and accurately. Meanwhile for the cases with helical joints or screw axis, the unknown motions (constraints) could be obtained through solving equations constructed in CGA. Then mobility analysis and singularity identification of parallel mechanisms would be implemented merely using the operation rules of GA such as inner and outer products. Geometric algebra is also known as Clifford algebra proposed by William Clifford [30]. David Hestenes expressed the geometric interpretation of the algebraic entities and named Clifford algebra as geometric algebra [29]. geometric algebra integrates algebraic systems such as vector algebra, quaternion, Riemann algebra, Lie algebra, complex, screw, etc. algebra system into a unified framework, thus can avoid learning different algebraic languages and their mutual transformations. The subfields of GA could be selected by employing different basic generators according to the application. Since this paper intends to analysis the mobility and singularity of parallel mechanisms in a visual and concise form, the key point of which is to obtain the unknown action lines of constraints (motion axis) by direct geometry entities calculations and linear dependency determination. According to the application, two common geometric algebras are used in this paper, namely, conformal geometric algebra (CGA) [31,32] and G6 . Two superior characteristics of CGA are recognized widely as visual representation and direct calculation for geometric entities. For the former it owns clear geometric and physical meaning while the latter would be carried out coordinate-independently, elegantly and efficiently [33,34]. These make CGA based approach

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

275

attract more and more scholars and begin to be applied in robotics [35–38], such as inverse kinematics of serial mechanisms [35–37] and rigid-body displacement analysis by geometric constraints [38]. Furthermore, G6 is applied to determine linear-dependency of lines in space as Ref. [39,40] refer to. After the brief review of the state-of-art concerning the mobility, singularity, motion/constraint analysis of parallel mechanisms, this paper is organized as follows. Section 2 introduces the fundamentals of GA and then describes the geometric entities such as point, line, plane and their geometric relations by CGA and represents the method of linear-dependency determination of lines in G6 . By defining the relations between motions and constraints using shuffle product, Section 3 proposes an analytical approach to determine unknown 6-n constraints (motions) from known n motions (constraints) in common cases without screw motions (constraints) only by drawing some auxiliary points, lines and planes. A procedure to analyze the mobility of parallel mechanisms with shuffle and outer products is presented in Section 4, in which a criterion is defined to distinguish linear dependent constraints. In Section 5, the singularity of parallel mechanism is identified by the two defined indices in this paper with shuffle and outer products. A typical example is given to demonstrate the effectiveness of this approach in Section 6 and conclusions are drawn in Section 7. 2. Geometric entities in GA In this section, two common geometric algebras as G4,1 and G6 are introduced after the fundamental operations. G4,1 known as conformal geometric algebra is superior in describing the geometric entities such as point, line, plane and their relations. On the other hand, G6 can be employed to determine linear dependency of lines in space. 2.1. Fundamentals of GA A non-degenerate geometric algebra of ( p + q )-D space can be denoted as G p,q , where p and q are numbers of generators such as e1 , e2 , · · · , e p+q which square to 1 and −1 respectively [41]. G p,q is consisted of all the elements produced by basis generators through operations. The three most often used operations of geometric algebra are the geometric, outer and inner product, which will be introduced in brief. The geometric product of algebra elements is simply denoted by juxtaposition and for instance the operation of two vectors is written as ei ej which is a combination of the outer product and the inner product and can be expressed as

ei e j = ei ∧ e j + ei · e j , i, j = 1, 2, 3

(1)

where ei · ej and ei ∧ej are known as the inner and outer product, respectively. The anti-commutative property is ei e j = −ei e j (i = j) based on the original definition of geometric algebra. The outer product is different from the cross product since the outer product results in zero or a blade of higher grade and represents the subspace spanned by the independent vectors, while the process of the cross product can be carried out only in 3D space e.g. e1 × e2 = e3 is a vector normal to both e1 and e2 . A p + q-dimensional geometric algebra consists of the blades with grades 0, 1, 2, …, p +q. The grade of a blade can be considered as the number of linear-independent 1vectors the blade contains. For example, e1 ∧ (e2 + e3 ) is of grade 2 called 2-blade and ei ∧ej ∧∧ek is just a blade of grade k (k-blade). The blade of maximum grade n is called the pseudoscalar, such as I3 = e1 ∧ e2 ∧ e3 , which is the pseudoscalar of 3D space. The outer product operation is also anti-commutative. The inner product is a commutative and blade reduction product as same as the dot product, e.g. the inner product of two blades of grade k1 and k2 will yield a |k1 − k2 | -blade. For two generators ei and ej , their inner product is a 0-blade, namely, a scalar and equals to zero when i = j. There exist a great number of algebra basis for G p,q , we can make a choice according to the applications. The common geometric algebras which can be used in mobility and singularity analysis of parallel mechanisms are introduced here. Considering a 3D vector space and assume e1 , e2 , e3 be its orthogonal basis vectors or generators, Euclidean geometric algebra known as G3 can be readily constructed. A common point or a direction vector in 3D Euclidean space can be expressed as the linear combination of three generators such as x = x1 e1 + x2 e2 + x3 e3 , where xi (i = 1, 2, 3) are scalar coefficients. In order to unify the geometric entities description and Euclidean distance in the same mathematical system, CGA was proposed by introducing other two generators e+ and e− satisfying e2+ = −e2− = 1 to Euclidean geometric algebra. The origin and infinity of 3D are defined as e0 and e∞ respectively, which have the relations as [42]

e0 =

1 ( e − − e + ), e ∞ = e − + e + 2

(2)

where e0 and e∞ are named as null vectors since

e20 = 0, e2∞ = 0

(3)

Considering Eq. (2), the inner and outer product of null vectors can be obtained as

e∞ ∧ e0 = e+ ∧ e− , e∞ · e0 = −1

(4)

276

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293 Table 1 Geometric entities presented by CGA. Geometric entities Point Plane Sphere Homogeneous point Point Pair Line Circle

IPNS p=x+

OPNS 1 2 x e∞ 2

π = n + d e∞

+ e0

S = p − 12 r 2 e∞ Hp = π ∧ L P p = S1 ∧ S2 ∧ S3 L = π 1 ∧ π2 Z = S1 ∧ S2

p∗ = S1 ∧ S2 ∧ S3 ∧ S4

π ∗ = p1 ∧ p2 ∧ p3 ∧ e∞

S ∗ = p1 ∧ p2 ∧ p3 ∧ p4 H p∗ = p ∧ e∞ P p∗ = p1 ∧ p2 L ∗ = p1 ∧ p2 ∧ e∞ Z ∗ = p1 ∧ p2 ∧ p3

It is said that there are p + q linear-independent vectors in the p + q-dimensional vector space. As well known, there are six linear-independent lines in space at most, so that we need a six-dimension vector space spanned by six linearindependent vectors to measure linear dependency of lines in space. Hence, a common 6D geometric algebra as G6 is adopted here. 2.2. Geometric entities and their relations In CGA, geometric entities can be represented by vectors of grades. The point in 3D can be represented by a vector as [43]

p=x+

1 2 x e∞ + e0 2

(5)

where x2 = x21 + x22 + x23 . A plane is defined by

π = n + d e∞

(6)

where n refers to a direction vector in 3D space normal to the plane and d is the distance between the plane and origin. A line can be considered as the intersection of two planes geometrically and then expressed by the inner product null space (IPNS) as [43]

L = π1 ∧ π2

(7)

Eq. (7) can be expanded as

L = u 1 e2 e3 + u 2 e3 e1 + u 3 e1 e2 + m1 e1 e∞ + m2 e2 e∞ + m3 e3 e∞

(8)

where u1 , u2 , u3 , m1 , m2 and m3 are scalar coefficients of Plücker coordinate. For the purpose of presentation clarity, Eq. (8) can be further rewritten as

L=U +M

(9)

where U = u1 e2 e3 + u2 e3 e1 + u3 e1 e2 and M = m1 e1 e∞ + m2 e2 e∞ + m3 e3 e∞ are 2-vectors and can be denoted as U = (u1 e1 + u2 e2 + u3 e3 )I3 = uI3 and M = (m1 e1 + m2 e2 + m3 e3 ) ∧ e∞ = m ∧ e∞ respectively. u and m are vectors in 3D explained as the direction and moment of the line respectively, so that u · m = 0 as they are orthogonal. A line can be normalized by dividing the norm of its direction vector. According to the points defined in 5D space, a line can also be produced by two different points as

L ∗ = p1 ∧ p2 ∧ e∞ herein,

L∗

(10)

is the dual of L, whose operation rule is given as [41]

(e1 e2 · · · er )∗ = (e1 e2 · · · er )I5−1 , r = 1, 2, 3, ∞, 0

(11) I5−1

I5 I5−1

where I5 is unit pseudoscalar of G p,q and its inverse may be given as = −e− e+ e3 e2 e1 since = 1. For example, (e1 e2 )∗ = e3 e+ e− = e3 ∧ e∞ ∧ e0 and (e1 e∞ )∗ = e2 e3 e∞ . Comparing Eq. (7) with Eq. (10), line is described in the outer product null space (OPNS) by the outer product of points on it. The calculation among geometric entities, such as points, spheres, planes, circles, lines can be achieved as shown in Table 1 [43]. The relationship between the expressions of same geometric entity in IPNS and OPNS is known as duality. 2.3. Linear-independency of lines For any g general line vectors expressed in G6 , their outer product can be calculated as

g = l1 ∧ l2 · · · ∧ lg , g ≥ 2

(12) = 1 ( i = 1, 2, · · · 6 ). u1, ja , u2, ja ,

where l ja = u1, ja e1 + u2, ja e2 + u3, ja e3 + m1, ja e4 + m2, ja e5 + m3, ja e6 ( ja = 1, 2, · · · n) and u3, ja , m1, ja , m2, ja and m3, ja are scalar coefficients of the Plücker coordinate of the general line l ja . If g is a g-vector representing the subspace spanned by g vectors, it indicates that the g general lines are linear-independent. If g is zero, there e2i

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

277

Fig. 1. Axes of motions and action lines of constraints.

is at least a line vector among g line vectors can be expressed by the linear combination of the other g-1 line vectors since the outer product of a vector and a subspace is zero when the vector is within the subspace. As a consequence, Eq. (12) is exactly the necessary and sufficient index to determine linear- dependency of g line vectors. This conclusion is the same with that given in Ref. [40]. 3. Motions, constraints and their determination approach In this section, the motions and constraints are characterized respectively by their axes and action lines that would be defined by CGA in a concise way. Furthermore, the axes of rotation and translation as well as action lines of force and couple are illustrated by geometric symbols in a visual manner. According to the mechanics principle, we can clearly define the relation between motions and constraints by means of the shuffle product. Then, an analytical approach is proposed to determine unknown 6-n constraints (motions) from known n motions (constraints) for a rigid body in common situations only by drawing auxiliary points, lines and planes. 3.1. Motions and constraints As is well-known, a motion can be described by its axis and a magnitude. The axis denoted by a line vector in 3D space is a basic geometric element to characterize a rotation or a translation [23]. Based upon the properties of the rotations and translations, their axes can be respectively expressed as follows based upon Eq. (8). R LM = uRM,1 e2 e3 + uRM,2 e3 e1 + uRM,3 e1 e2 + mRM,1 e1 e∞ + mRM,2 e2 e∞ + mRM,3 e3 e∞ R R = UM + MM

(13)

P LM = mPM,1 e1 e∞ + mPM,2 e2 e∞ + mPM,3 e3 e∞ P = MM

(14)

R and LP respectively represent the axes of rotation and translation. U R and M where LM are 2-vectors and can be denoted M M M R = uR I and M = m ∧ e R and mR are vectors in 3D explained as the direction and moment of line as UM respectively. u ∞ M 3 M M M M P . respectively so that uRM · mRM = 0 as they are orthogonal. mPM is the direction vector of LM In a similar way, the constraint force and couple can be characterized by their action lines, which would be respectively expressed as

LCF = uFC,1 e2 e3 + uFC,2 e3 e1 + uFC,3 e1 e2 + mFC,1 e1 e∞ + mFC,2 e2 e∞ + mFC,3 e3 e∞ = UCF + MCF

(15)

LCC = mCC,1 e1 e∞ + mCC,2 e2 e∞ + mCC,3 e3 e∞ = MCC

(16)

where LCF and LCC respectively represent the action lines of constraint force and couple. Similar with the axes of rotation and translation, UCF and MC can be considered as UCF = uFC I3 and MC = mC ∧ e∞ . Furthermore, uFC · mFC = 0. mCC is the direction vector of LCC . Supposing the norm of the magnitude equals one, the motions and constraints can be respectively characterized by their axes and action lines. As shown in Fig. 1, the axes of motions and the action lines of constraints can be illustrated by a blue line, an arrowed blue line, a red dotted line and an arrowed red dotted line, respectively. According to mechanics, constraint does not do work on the motion [6]. The geometric conditions for this principle can be summarized as: (1) action line of constraint force is intersected or parallel with the axis of a rotation, (2) action line of constraint force is perpendicular to the axis of a translation, (3) action line of constraint couple is perpendicular to the axis of a rotation. In order to describe these geometry relationships in a concise equation, shuffle product with its symbol ∨, which stems from Grassmann- Cayley Algebra, is introduced here. According to the detail calculation stated in [44], the shuffle product of two lines can be obtained as

L1 ∨ L2 = u 1,1 m1,2 + u 2,1 m2,2 + u 3,1 m3,2 + m1,1 u 1,2 + m2,1 u 2,2 + m3,1 u 3,2 where L ja = U ja + M ja , ja = 1, 2.

(17)

278

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

Therefore, the geometric relation among constraint action lines and motion axis can be described in algebra as

⎧ F R =0 ⎪ ⎨LCF ∨ LM P LC ∨ LM = 0

(18)

C R =0 ⎪ ⎩LCC ∨ LM P

LC ∨ LM = 0

LCF

R = 0 indicates the action line of a constraint force is intersected or parallel with the axis of a rotation. LF ∨ where ∨ LM C P = 0 denotes the action line of a constraint force is perpendicular to the axis of a translation. LC ∨ LR = 0 indicates the LM M C P = 0 comes into existence no matter what action line of a constraint couple is perpendicular to the axis of a rotation. LCC ∨ LM the relation between the action line of a constraint couple and the axis of a translation. The axes of general motion which are considered as a combination of rotation and translation can be expressed as R P LM = LM + hM LM

(19)

where hM is the pitch of the axes of the screw motion. If hM is zero, LM is the axis of rotation and when hM is infinite, LM indicates axis of translation. Based on the mechanics principle, we can obtain the constraints by taking advantage of the reciprocal property as

LM ∨ LC, jC = 0, jC = 1, 2, · · · 5 where LC, j = C

LCF , j C

(20)

+ hC, j LC, j , hC, j is the pitch of the action line of constraint. If hC, j is zero, LC, j is the action line of C

C

C

force and when hC, j is infinite, LC, j indicates the action line of couple. C

C

C

C

The axis (action line) of screw motion (constraint) is a line with finite non-zero pitch, which is cumbersome to be illustrated by graphs. Therefore, if there exist screw motions (constraints), the constraints (motions) can be obtained by solving equations as

LM, jM ∨ LC, jC = 0, jC = 1, 2, · · · 6 − jM , jM = 1, 2, · · · ≤ 6

(21)

3.2. GA based approach to determine unknown constraints (motions) In what follows, an analytical approach based on GA to determine the unknown 6-n constraints (motions) from the known n motions (constraints) in all situations except for screw motions (constraints) would be proposed visually only by drawing some auxiliary points, lines and planes, whose procedure is firstly given as follows. Step 1: Visual representation of known motions (constraints) using CGA. Once a rigid body, open kinematic chain or parallel mechanism is given, its schematic diagram would be drawn and then the motions (constraints) are known and illustrated by the lines given in Fig. 1 on the schematic diagram. Using Eqs. (13–16), each of the axes (action lines) of the known motions (constraints) can be expressed by a single formula. Step 2: Illustrations of unknown constraints (motions). Based upon the known motions (constraints) given in Step 1, the number and property of the unknown constraints (motions) would be obtained firstly. Keeping the geometric relations of the action lines of constraint forces and couples and the axes of rotations and translations in mind, we can readily draw auxiliary points, lines and planes and then find a cluster of lines that satisfy Eq. (18). By expressing these auxiliary points, lines and planes using CGA formulas, a group of action lines (axes) of the unknown constraints (motions) can be calculated with CGA operation rules and then illustrated on the schematic diagram in a visual way. Step 3: Identification of linear dependence of unknown constraints (motions) employing G6 . For the obtained action lines (axes) of the unknown constraints (motions) in Step 2, their linear dependence are required to be distinguished. Based upon Eqs. (13–16), the action lines or axes of the unknown constraints or motions obtained in Step 2 can be expressed in G6 as

li = u1,i e1 + u2,i e2 + u3,i e3 + m1,i e4 + m2,i e5 + m3,i e6

(22)

where li represents the ith action line of constraint couple or axis of translation in G6 when u1,i = u2,i = u3,i equals to zero, otherwise, li represents the ith action line of constraint force or axis of rotation. Therefore, the linear dependence of the constraints (motions) obtained from Step 2 can be identified by taking advantage of the outer product of their action lines (axes) according to Eq. (12). Step 4: Determination of unknown constraints (motions). By identifying linear dependence of the unknown constraints (motions) obtained from Step 2 using the method proposed in Step 3, the action lines (axes) of unknown constraints (motions) can be expressed by CGA formula and illustrated on the schematic diagram of the known motions (constraints) for a given rigid body, open kinematic chain or parallel mechanism.

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

279

Fig. 2. Three rotations and their constraints.

For the cases with helical joints or screw axis, the constraints (motion) of motions (constraints) could be determined through Step 3 and 4 after solving Eq. (21).

3.3. Determination of unknown constraints (motions) of a rigid body For an arbitrary rigid body without screw motions (constraints) in space, according to the CGA based approach proposed in Section 3.2, the unknown 6-n constraints (motions) can be determined analytically from the known n motions (constraints) with diverse distributions of axes (action lines). Recalling Eq. (13) - (16), the axis of a rotation or a translation is the same respectively with the action line of a constraint force or a constraint couple in terms of CGA formulas and meanwhile the total number of motions and constraints for a rigid body or a mechanism is six, therefore we only need to determine corresponding unknown constraints (motions) from the known 1–6 motions (constraints). To conclude the common situations without screw motion (constraints), the determined approach of unknown constraints from 3, 4, and 5 motions as well as unknown motions from 3, 2, 1 constraints are proposed, and they are respectively named as Case 1, 2 and 3 that would be detailed in Section 3.3.1, 3.3.2 and 3.3.3.

3.3.1. Case 1 Representatively, the known motions would be considered as three rotations with their axes on different planes, which can be illustrated in Fig. 2 and meanwhile expressed using CGA as R R R LM , jR = UM, jR + MM, jR , jR = 1, 2, 3

(23)

R R R R where UM, = uRM, j I3 , MM, = mRM, j ∧ e∞ , uRM, j · mRM, j = 0, lM ∨ lM = 0, iR , jR = 1, 2, 3 and iR = jR . j j ,i ,j R

R

R

R

R

R

R

R

Based upon Eq. (18), the unknown constraints should be three constraint forces and their action lines intersect with the axes of the known three rotations. In order to obtain the action lines of the unknown constraint forces, some auxiliary points, lines and planes are required to be drawn. R Three different points ph (h = 1, 2, 3) on axis LM are selected and the plane π h is produced as follows by point ph and ,2 R , respectively. axis LM ,1

 R ∗ πh∗ = ph ∧ LM ,1 , h = 1 , 2 , 3

(24)

R Suppose the axis LM, and the plane π h are intersected at point p0, h , leading to 3 R H p0,h = πh ∧ LM ,3 , h = 1 , 2 , 3

(25)

Therefore, the action lines of the unknown constraint forces are obtained as



F LC,k F

∗

= pkF ∧ p0,kF ∧ e∞ , kF = 1, 2, 3

(26)

After identifying linear dependence of the three constraint forces in Eq. (26) based upon the method proposed in Step 3 of Section 3.2, the constraint forces are proven as linear independence and their action lines can be illustrated in Fig. 2 visually. On the contrary, if the three constraint forces are known, the axes of the unknown rotations would be obtained using the similar procedure proposed above. As shown in Fig. 3, the unknown constraints (motions) are obtained from the known three motions (constraints) under other common situations except Case 1.

280

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

Fig. 3. Determination of Unknown Constraints (Motions) from Known 3 Motions (Constraints) ∗ Screw motions (Constraints) are not included.



X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

281

Fig. 4. Two rotations, two translations and their constraints.

3.3.2. Case 2 Representatively, the known motions are considered as two rotations with their axes on different planes and two translations with their axes perpendicular with each other, which are illustrated in Fig. 4 and meanwhile expressed using CGA as



R R R LM , jR = UM, jR + MM, jR ,

jR = 1, 2

P LM , jP

jP = 1, 2

=

P MM , jP ,

(27)

R P R R where UM, = uRM, j I3 , MM, = mPM, j ∧ e∞ , uRM, j · mRM, j = 0, LM ∨ LM = 0 and mPM,1 · mPM,2 = 0. uRM, j and mPM, j are the ,1 ,2 j j R

R

P

P

R

R

R P unit direction vectors in 3D of rotation axes LM and translation axes LM respectively. ,j ,j R

R

R

R

According to Eq. (18), the unknown constraints should be one constraint force and one constraint couple. The action line of the constraint couple is perpendicular to the axes of the known two rotations, and then can be obtained as





LCC = uRM,1 × uRM,2 ∧ e∞

(28)

For the action line of the constraint force, it should be perpendicular to the axes of the known two rotations. In order to obtain the action line, some auxiliary points, lines and planes are required to be drawn. R Select an arbitrary point p1 on the axis LM ,1 and then draw a line that pass through the point p1 and is perpendicular R to the axes of the known two translations, axis LM and line L0 can produce a plane π 0 as ,1

 R ∗ π0∗ = p0 ∧ LM ,1

(29)

where point p0 is on line L0 and different from point p1 . R The axis LM ,2 and plane π 0 is intersected at point p2 , which is expressed by R H p 2 = π0 ∧ L M ,2

(30)

So the action line of the unknown constraint force can be obtained as









LCF = mPM,1 × mPM,2 I3 + r p2 × mPM,1 × mPM,2



∧ e∞

(31)

where the constraint force can be readily illustrated in Fig. 4. After identifying linear dependence of the constraint force and couple in Eq. (28) and (31) based upon the method proposed in Step 3 of Section 3.2, the constraints are proven as linear independence and their action lines can be illustrated in Fig. 4 visually. On the contrary, if one constraint force and one constraint couple are known, the axes of the unknown rotations should be perpendicular with constraint couple and intersecting with constraint force. In the meanwhile, the axes of the translations would be obtained as perpendicular with constraint force. As shown in Fig. 5, the unknown constraints (motions) are obtained from the known four motions (two constraints) under other common situations except Case 2. 3.3.3. Case 3 Representatively, the known motions are considered as three rotations with their axes on different planes and two translations with their axes perpendicular with each other, which are illustrated in Fig. 6 and meanwhile expressed using CGA as



R R R LM , jR = UM, jR + MM, jR ,

jR = 1, 2, 3

P LM , jP

jP = 1, 2

=

P MM , jP ,

(32)

R P R R where UM, = uRM, j I3 , MM, = mPM, j ∧ e∞ , uRM, j · mRM, j = 0, LM ∨ LM = 0 and mPM,1 · mPM,2 = 0. uRM, j and mPM, j are the ,1 ,2 j j R

R

P

P

R

R

R P unit direction vectors in 3D of rotation axes LM and translation axes LM respectively. ,j ,j R

R

R

R

282

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

Fig. 5. Determination of Unknown Constraints (Motions) from Known 4 Motions (Constraints)∗ ∗ Screw motions (Constraints) are not included.

Based upon Eq. (18), the direction of the action line of the unknown constraint would be firstly determined, which is perpendicular to the plane produced by two axes of translations and be expressed as

uFC = mPM,1 × mPM,2

(33)

In order to obtain the action line of the unknown constraint force, some auxiliary points, lines and planes are required to be drawn.

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

283

Fig. 6. Three rotations, two translations and their constraints.

Passing through arbitrary point p1 and point p2 , the line L0, 1 and L0, 2 are obtained which are parallel with uFC , respectively.





L0,h = UCF + r ph × uFC ∧ e∞ , h = 1, 2

(34)

where UCF = uFC I3 . The L0,1 , L0,2 and uFC can respectively produce plane π 0,1 and π 0,2 , which can be intersected at line LCF ,

 R ∗ π0∗,h = p0,h ∧ LM ,h , h = 1, 2

(35)

LCF = π0,1 ∧ π0,2

(36)

where point p0,h is on line L0,h and different from point ph . R If LM is intersected with LCF , that is ,3 R F LM ,3 ∨ LC = 0

(37)

Therefore, LCF is the action line of the unknown constraint, and then the constraint is a constraint force and can readily be illustrated in Fig. 6 visually. R If LM does not intersect with LCF , the constraint is not a constraint force but a constraint screw decided by resultant ,3 force of constraint force and couple, which satisfy Eq. (21) as

⎧ R ⎨LM,1 ∨ LC = 0 LRM,2 ∨ LC = 0



LRM,3

(38)

∨ LC = 0

On the contrary, if one constraint force is known, the axes of the unknown rotations and translations would be obtained shown as fig. 6 and (1), (2) in Fig. 7. As shown in Fig. 7, the unknown constraints (motions) are obtained from the known 5 motions (two constraints) under other situations except Case 3. Based on Fig. 2–7, the constraints (motions) of a given rigid, the end-effector of single chain or parallel mechanism could be obtained in a visual and concise way directly through efficient algebraic calculations instead of solving equations or observation by employing experience. Notice that the unknown constraints (motions) should be selected to keep linear independent as noted in each situation in Fig. 3, 5, 7. 4. Mobility analysis of parallel mechanism In this section, a procedure based upon GA to analyze the mobility of parallel mechanism is presented. Using the approach twice that determine the unknown 6-n constraints (motions) from the known n motions (constraints), the number and property of the mobility are obtained readily and then the axes of motions are expressed analytically, in which a criterion is defined to distinguish the linear dependence of constraints applied on the moving platform of parallel mechanism. The procedure is concluded as follows. Step 1: For a given parallel mechanism, the axes of 1-DoF joints (U and S joints are regarded as two and three R joints with their axes intersecting at the same point, R, U and S denote revolute, universal and spherical joints) within openloop limbs can be drawn on the schematic diagram of the parallel mechanism visually and meanwhile expressed by CGA formulas coordinate-independently and concisely. Then, the action lines of the unknown constraints for each limb will be calculated by CGA formulas using the approach proposed in Section 3 and illustrated on the schematic diagram.

284

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

Fig. 7. Determination of Unknown Constraints (Motions) from Known 5 Motions (Constraints)∗ ∗ Screw motions (Constraints) are not included.

Step 2: Determine the linear independence of the constraints obtained in Step 1. We need to calculate the outer product of action lines of all the g constraints provided by all limbs as

g = lC,1 ∧ lC,2 ∧ · · · ∧ lC,g , g ≥ 2

(39)

Based upon the linear independent criterion of constraints defined in Step 3 of Section 3.2, these constraints are independent if and only if Eq. (39) is not equal to zero. Otherwise, there is at least one constraint that is linear dependent of other constraints, so we further need to calculate the outer product of action lines of these constraints with the aim to find the linear dependent constraints.

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

285

Firstly, the outer product of the action lines of any two constraints among the g constraints is calculated as

2,ς = lC,w ∧ lC,n , w, n = 1, 2, · · · , g, ς = 1, 2, · · · , C2g

(40)

If Eq. (40) does not equal to zero, it indicates that any two constraints among all the p constraints are linear independent. Otherwise, the action line of one constraint can be expressed linearly by that of another one, and then any one constraint can be removed since its linear dependence. Assume the number of linear dependent constraints is denoted by s1 , we can remove the s1 constraints from all the g constraints and then the g-s1 constraints will be retained. Secondly, we need to calculate the outer product of the action lines of any three constraints among the g-s1 constraints as

3,ξ = lC,w ∧ lC,n ∧ lC,t

(41)

where w , n , t = 1, 2, · · · , g − s1 and ξ = 1, 2, · · · , C3g−s1 . In case that Eq. (41) is not equal to zero, any three constraints among the g-s1 constraints are linear independent. Otherwise, the action line of any one constraint can be expressed by linear combination of other two constraints, and then any one constraint can be removed because of its linear dependence. Suppose the number of linear dependent constraints is s2 , then the s2 constraints will be removed. In sequence, the outer product of action lines of any v + 1 constraints among the g-(s1 +s2 +…+sv -2 ) constraints would be carried out. If the outer product equals to zero, we can readily find the linear dependent constraints whose number is denoted by sv -1 . For p constraints, the circulation will be ended when the following equation is satisfied

v+1 = p−

v−2 δ =1



Therefore, we can identify the linear independent constraints with their number p −

(42) v

−2 δ =1

sδ .

Step 3: Based upon the independent constraints obtained in Step 2, the geometric distribution of action lines of these constraints over the prescribed workspace can be achieved and illustrated under the instruction of Fig. 3, Fig. 5, Fig. 7 and then the axes of corresponding motions are determined visually according to the approach proposed in Section 3. This leads to the number and property of the mobility of parallel mechanism are obtained and the axes of motions allowed by the limbs are expressed analytically and visually. 5. Singularity analysis of parallel mechanism In this section, an approach based upon GA to the singularity analysis of parallel mechanisms is proposed. By calculating the relations between the axes of motions and the action lines of actuations or/and constraints, two indices of singularity are defined to identify all singular configurations of parallel mechanisms. For the first type of singularity, a parallel mechanism will lose one or more DoFs. This means in physical meaning that the actuated force or couple does not do work on the motion, which can be characterized by relations between axes of motions and action lines of actuations described in G4,1 using the shuffle product as

Vka =

na LD,ka ∨ LM, ja,k = 0, ja = 1, 2, · · · , na , ka = 1, 2, · · · , s

(43)

i=1

where LD,ka denotes the action line of the ka th actuated force or couple. LM, ja ,k represents the motion axis of the ja th 1-DoF joint of the kth limb. For a parallel mechanism having δ actuated force or couple, we can define the index that the parallel mechanism is of the first type of singularity as

μV = min {V1 , V2 , · · · , Vδ }

(44)

For the second type of singularity, a parallel mechanism will gain extra one or more DoFs even when all the actuated joints are locked. In this case, all actuated forces or couples will be temporarily changed into constraint forces or couples applying on the moving platform. In other words, the moving platform at this moment is imposed by six constraints in terms of three constraint forces and three constraint couples. Therefore, the condition of a parallel mechanism gaining extra one or more DoFs is that at least one actuation or constraint is linear dependent with others. This condition can be expressed by the outer product of action lines of all the actuations and constraints described in G6 as

6 = D ∧ C = 0 where

D = lD,1 ∧ lD,2 ∧ · · · ∧ lD,p , C = lC,1 ∧ lC,2 ∧ · · · ∧ lC,6−p

(45)

286

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

Fig. 8. Schematic diagram of 3-PRS parallel mechanism.

Using the approach proposed in Section 3, we can obtain which in Eq. (45) among actuations and constraints is linear dependent with others, and further find which plays a role in producing singular configurations of parallel mechanisms. For the purpose of concise expression in format, taking the dual product on both sides of Eq. (45), leads to

∗6 = (D ∧ C )I6−1 = 0

(46)

In consequence, we can further define the index that a parallel mechanism is of the second type of singularity as

μ = |∗6 |

(47)

For the third type of singularity, it is defined when the first and second types of singularity occur simultaneously. 6. Example The GA based approach proposed in this paper helps to obtain motions/constraints in an analytical and visual form which is the basis of mobility, singularity analysis and even topology synthesis of parallel mechanisms. In this section, one typical example is given to demonstrate the effectiveness of the approach to determine motions/constraints, mobility and singularity of parallel mechanisms. 3-PRS parallel mechanism is widely used in industry but the research on it is far from adequate. The schematic diagram of an axially symmetrical 3-PRS parallel mechanism is shown in Fig. 8. The mechanism consists of a fixed base, a moving platform and three identical PRS limbs. Here, the underlined P represents an actuated prismatic joint. The instantaneous motion axes of 3-PRS parallel mechanism in general configurations are difficult to describe in analytical and concise forms which are hard to observe for beginners when the constraints lie in different planes. While by means of numerical method, the algebraic expression can’t transfer into motions with clear physical meaning visually. In order to describe the instantaneous motion axes at any configurations, the GA based approach is used here. A reference frame O-xyz is attached to the plane of the fixed base with its origin O at the center of the equilateral triangle B1 B2 B3 . Also, an instantaneous reference frame P-uvw is assigned to the plane of the moving platform with its origin P the center of the equilateral triangle A1 A2 A3 , and its three orthogonal axes remaining parallel to those of frame O-xyz. Note that all GA formulas are evaluated in frame P-uvw. 6.1. Motion and constraint analysis As shown in Fig. 8, each limb consists of five 1-DoF joints, whose axes can be expressed using CGA as

⎧ P P LM,1,k = MM ⎪ ,1,k ⎪   ⎪ ⎪ R R R ⎪ ⎪ ⎨LM,2,k = UM,2,k + (ak − qk ) × uM,2,k ∧ e∞ LR

= UR

+ ak × uR

∧ e∞

M,3,k M,3,k M,3,k ⎪   ⎪ R R R ⎪ L = U + a × u ⎪ k M,4,k M,4,k M,4,k ∧ e∞ ⎪ ⎪   ⎩ R R R

LM,5,k = UM,5,k + ak × uM,5,k ∧ e∞

, k = 1, 2, 3

(48)

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

287

R where ak = P Ak , UM = uRM, ja,k I3 , uRM, ja,k is the unit vector of the ja th ( ja = 1, 2, · · · , 5) 1-DOF joint in the kth (k = 1, 2, 3) , ja,k limb and R R R R R R R R R UM ,2,1 = uM,1,1 e2 e3 + uM,2,1 e3 e1 + uM,3,1 e1 e2 , UM,2,2 = uM,1,2 e2 e + uM,2,2 e3 e1 + uM,3,2 e1 e2 , UM,3,1 = sθ sφ , R R R R R R UM ,2,3 = uM,1,3 e2 e3 + uM,2,3 e3 e1 + uM,3,3 e1 e2 , uM,1,1 = sφ cθ cψ + cφ sψ , uM,2,1 = −sφ cθ sψ + cφ cψ ,



√ 3 e e 2 3 1 √ + 23 c

a1 = ae2 e3 , a2 = a − 12 e2 e3 + uRM,1,2 = 12 (sφ cθ cψ + cφ sψ )



, a3 = a − 12 e2 e3 −



3 e e 2 3 1

,

( φ cθ cψ − sφ sψ )



uRM,2,2 = 12 (−sφ cθ sψ + cφ cψ ) − 23 (cφ cθ sψ + sφ cψ ), uRM,3,2 = √ uRM,3,3 = 23 cφ sθ − 12 sθ sφ , uRM,1,3 = − 12 (sφ cθ cψ + cφ sψ ) +





3 2 c

φ sθ + 12 sθ sφ ,

(cφ cθ cψ − sφ sψ ), uRM,2,3 = − 12 (−sφ cθ sψ + cφ cψ ) − 23 (cφ cθ sψ − sφ cψ ) 3 2√

,

herein, ‘s’ and ‘c’ denote ‘sin’ and ‘cos’ functions respectively. φ , θ and ψ are ZYZ type Euler angles. Eq. (48) can further be rewritten as follows through a linear transformation.

⎧ ⎪ ⎪ ⎪ ⎪ ⎨

P LM = mPM,1,k ∧ e∞ ,1,k P LM,2,k = uRM,2,k × qk ∧ e∞ R R LM,3,k = UM + ak × uRM,3,k ∧ ,3,k R R LM,4,k = UM,4,k + ak × uRM,4,k ∧ R R LM = UM + ak × uRM,5,k ∧ ,5,k ,5,k



⎪ ⎪ ⎪ ⎪ ⎩

  



  e∞  e∞

(49)

e∞

According to Fig. 7 (1), we can readily determine the constraints provided by PRS limbs as

⎧ F   ⎨LC ,1 = UMR ,2,1 + a1 × uRM,2,1  ∧ e∞ R R LFC ,2 = UM , 2 , 2 + a 2 × u M , 2 , 2  ∧ e ∞ F R LC ,3 = UM,2,3 + a3 × uRM,2,3 ∧ e∞



(50)

6.2. Mobility analysis For the three constraints obtained in Eq. (50), we firstly need to calculate the outer product of their action lines in G6 as

3 = lCF,1 ∧ lCF,2 ∧ lCF,3

(51)

Substituting Eq. (50) into Eq. (51) leads to the result is not equal to zero, which indicates the three constraints are linear independent. As illustrated in Fig. 8, all geometric distributions of action lines of three constraints are given. Due to the action lines of the three constraints of 3-PRS parallel mechanism are always respectively parallel with the axis of R joint within the kth limb, there are only three geometric distributions over the prescribed workspace for the action lines of three constraints. (1) Three action lines are on the same plane When the moving platform of 3-PRS parallel mechanism is located on the home configuration without nutation motion as shown in Fig. 8, the action lines of the three constraints are on the same plane and can be expressed as follows according to Fig. 3 (2).

⎧ ⎨ LRM ,1 = e2 e3 = e3 e1

LR

⎩LPM ,2 = e e 3 ∞ M ,3 (2) Any two action lines are on the Without loss of generality, only two π (k − 1)/3(k = 1, 2, · · · , 6) and θ when φ = ψ = 0 as shown in Fig. as

⎧ ∗ R ⎪ ⎨LM ,1  = pE ∧ pH1 ∧ e∞ ⎪ ⎩

LRM ,2



= pE ∧ pH2 ∧ e∞

LPM ,3 = n1 ∧ e∞

(52) same plane of the three constraints action lines are coplanar in the situation that φ = −ψ = = 0. For instance, LCF ,2 and LCF ,3 would be on plane π 21 and intersected at point E 9. According to Fig. 3(4), the axes of motions under this situation can be expressed

(53)

288

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

Fig. 9. Motion axes of 3-PRS parallel mechanism when only two action lines are on the same plane.

Fig. 10. Motion axes of 3-PRS parallel mechanism when three action lines are on different planes.

where point H1 and H2 are two arbitrary points on line LCF ,1 , and



pE = e0 + a −0.5e1 +

√ 3 2

cos θ e2 −



3 2

sin θ e3 + a2 e∞

pH1 = e0 + ae1 + 12 a2 e∞ , pH2 = e0 + a(e1 + e2 ) + a2 e∞ , n1 = e2 e3 Fig. 9 shows the distribution of the axes of rotation motion versus the nutation angle θ in the situation that point H1 and H2 are chosen as A1 and a point at infinity respectively. (3) Three action lines are on different planes The most common geometric distributions of action lines is shown in Fig. 10, in which the action lines of the three constraints are on different planes and parallel with the plane of the fixed base of the parallel mechanism. In order to simplify the procedure of solving, Eq. (50) can further be expressed as

⎧ C ⎨LC,1 = n ∧ e∞   R R LCF ,2 = UM , 2 , 2 + a 2 × u M , 2 , 2  ∧ e ∞ ⎩ F R R LC,3 = UM,2,3 + a3 × uM,2,3 ∧ e∞

(54)

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

289

where n = a2 × uRM,2,2 − a3 × uRM,2,3 − a1 × uRM,2,1 . According to Fig. 3(7), we can easily draw a plane π 31 with its normal denoted by n, this plane passes through point A2 and is intersected with LCF ,3 at point H1 whose vector can be expressed as

H pH1 = π31 ∧ LCF ,3

(55)

Therefore, the axis of one rotation can be determined as



R LM ,1

∗

= pH1 ∧ pA2 ∧ e∞

(56)

In a similar way, the axis of another rotation can be expressed as



R LM ,2

∗

= pH2 ∧ pA3 ∧ e∞

(57)

It is easy to know the axis of the translation is perpendicular to the plane of the fixed base, which can be expressed as P LM ,3 = n1 ∧ e∞

(58)

where n1 = −sθ cψ e1 + sθ sψ e2 + cθ e3 . As shown in Fig. 10, a pair of instantaneous axes of two rotation motions on any configuration of this situation can be achieved by taking advantage of Eqs. (55– 57). Based on the motions obtained from above three situations, we can readily conclude that the 3-PRS parallel mechanism has three DoFs in terms of two rotations and one translation. Meanwhile, the axes of the two rotations produced by 3-PRS parallel mechanism are expressed using CGA formulas in a concise way and illustrated on the schematic diagram in a visual way. From Fig. 8∼Fig. 10, the 3-PRS parallel mechanism is constrained by a couple for all non-singularity configurations so that the manipulator is named as zero torsion spatial mechanism and the Euler angles have the relationship as φ = −ψ [45]. By advantage of the approach based on GA, not only the number and property of the mobility of 3-PRS manipulator, but also the distributions and algebraic expressions of motions and constraints at any time can be obtained. With the help of Figs. 2–7, it is more comfortable and easier to analysis the mobility of parallel mechanisms and makes it possible for digital analysis. 6.3. Singularity analysis Using the indices of singularity defined in Section 5, we can identify all singular configurations of the 3-PRS parallel mechanism.

μV = min {V1 , V2 , V3 }

(59)

  μ = |∗6 | = l FC ,1 ∧ l FC ,2 ∧ l FC ,3 ∧ l FD ,1 ∧ l FD ,2 ∧ l FD ,3 I6−1

(60)

The action line of each limb could be obtained by locking the action joints. For the PRS limb, when the active prismatic F joint is locked, another constraint would generate and be illustrated as Fig. 5(1). The action line LD is passing through ,ka point Aka and A0,ka and could be obtained as



F LD ,k a

∗

= qka = pAka ∧ pA0,ka ∧ e∞ , ka = 1 , 2 , 3

herein,

rA0,ka = rB0,ka + hka uM1,ka , rB j = b j + xe1 + ye2 + ze3 , b1 = b(r1,1 e1 + r2,1 e2 + r3,1 e3 ), b2 = b(r1,2 e1 + r2,2 e2 + r3,2 e3 ), b3 = b(r1,3 e1 + r2,3 e2 + r3,3 e3 ), √r1,1 = cφ cθ cψ − sφ cψ , r2,1 = −cφ cθ sψ − sφ cψ , r3,1 = cφ cθ , r1,2 = − 12 (cφ cθ cψ − sφ sψ ) + 23√(sφ cθ cψ + cφ sψ ), √ r2,2 = − 12 (−cφ sθ s√ψ − sφ cψ ) + 23 (−sφ cθ sψ + cφ sψ ), r3,2 = − 12 cφ sθ + 23 sφ sθ , r3,3 = − 12 cφ sθ − 23 sφ sθ , uRMk = −sθ cψ e1 + sθ sψ e2 + cθ e3 a√

r1,3 = − 12 (cφ cθ cψ − sφ sψ ) −

3 2

(sφ cθ cψ + cφ sψ ), r2,3 = − 12 (−cφ sθ sψ − sφ cψ ) −



3 2

(−sφ cθ sψ + cφ sψ )

In order to reveal the first type of singularity of the 3-PRS parallel mechanism obviously, a typical dimensionless parameter a = 1, b = 4 and q = 4.5 are chosen. Unitize the action lines of forces or couples obtained above. Fig. 11(a) shows the distributions of μV , the first type of singularity, within the orientation workspace having precession angle φ = 0 ∼ 360◦ and nutation angle θ = 0 ∼ 90◦ . In Fig. 11(a), μV takes maximum values when θ = 0◦ and decrease with the increment of θ from 0° to 90° until the eventual occurrence of the corresponding singularities at the boundary of reachable workspace. Fig. 11(b) shows the indices μV of singularity versus θ = 0 ∼ 90◦ by firstly giving φ = 45◦ , 90° to 180°, respectively. It is known that μV tends to 0 when θ = 90◦ and φ = 180◦ , that is the first type of singularity appears. In this situation, the action line of F P actuation LD is intersected with all the axis of rotations of the first limb and perpendicular to the axis of translation LM ,1 ,1,1 as shown in Fig. 12(a).

290

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

Fig. 11. Distribution of μV of 3-PRS manipulator.

Fig. 12. Singularity pose of 3-PRS manipulator.

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

291

Fig. 13. Distribution of μ of 3-PRS manipulator.

As shown in Fig. 13(a), we can demonstrate the distribution of μ , the second type of singularity, within the orientation workspace having √ precession angle φ = 0 ∼ 360◦ and nutation angle θ = 0 ∼ 90◦ by assuming dimensionless parameters a = 1, b = 4 and q = 3 3, it is concluded that μ takes maximum values when θ = 0◦ and has zero values when θ = 40◦ ∼ 75◦ and φ = 0 ∼ 360◦ and then form a closed red curve in Fig. 13(a). For the second type of singularity of the 3-PRS parallel mechanism, there are three kinds whose variations versus θ = 0 ∼ 90◦ when φ = 0◦ , 60° and 90° as shown in Fig. 13(b). It is obtained from curve 1 of Fig. 13(b) that μ tends to zero when φ = 0◦ and θ = 70.5288◦ . In order to find which constraints or actuations play a role, their interactive outer products need to be calculated. We have found that the action lines of actuations lD, 1 , lD, 2 , lD, 3 and the action line of constraint lC, 1 are linear dependency because of their outer product as followed.

lD,1 ∧ lD,2 ∧ lD,3 ∧ lC,1 = 5.3641 ∗ 10−5 e1 ∧ e2 ∧ e3 ∧ e4 − 2.2204 ∗ 10−16 e1 ∧ e2 ∧ e3 ∧ e5 +1.1594 ∗ 10−4 e1 ∧ e2 ∧ e3 ∧ e6 + 7.6684 ∗ 10−10 e1 ∧ e2 ∧ e4 ∧ e6 −1.6574 ∗ 10−9 e1 ∧ e2 ∧ e5 ∧ e6 − 1.5416 ∗ 10−15 e1 ∧ e3 ∧ e4 ∧ e5 +8.0495 ∗ 10−4 e1 ∧ e3 ∧ e4 ∧ e6 − 3.1674 ∗ 10−20 e1 ∧ e3 ∧ e5 ∧ e6 +1.1507 ∗ 10−8 e1 ∧ e4 ∧ e5 ∧ e6 − 3.7242 ∗ 10−4 e2 ∧ e3 ∧ e4 ∧ e5 +8.0495 ∗ 10−4 e2 ∧ e3 ∧ e5 ∧ e6 + 2.5339 ∗ 10−19 e2 ∧ e4 ∧ e5 ∧ e6 +5.5887 ∗ 10−5 e3 ∧ e4 ∧ e5 ∧ e6

It could be concluded that the coefficients of blades are much far smaller than those generated by other constraints or actuations which do not contain these four in the meanwhile, so that lD, 1 , lD, 2 , lD, 3 and lC, 1 could be considered as linear dependent. In this case, the action lines of actuations lD, 1 , lD, 2 , lD, 3 and the action line of constraint lC, 1 intersect at the same point. In a similar way, the other two kinds belong to the second type of singularity can be obtained as shown in Fig. 12(c) and (d). As shown in Fig. 12(c), the outer product lD, 1 ∧lD, 2 ∧lD, 3 ∧lC, 1 ∧lC, 2 → 0 leads to μ → 0 when φ = 60◦ and θ = 47.7778◦ , in this case, the action line of actuation lD, 3 passes through the center of the moving platform. As shown in Fig. 12(d), the outer product lD, 1 ∧lD, 2 ∧lD, 3 ∧lC, 1 ∧lC, 2 ∧lC, 3 → 0 leads to μ → 0 when φ = 90◦ and θ = 54.4575◦ , in this case, the action line of actuation lD, 3 lies on the plane of the moving platform but does not pass through the center of the moving platform. During the process above, the configurations of the 3-PRS manipulator when the two kinds of singularity happened are obtained by means of the approach based on GA instead of Jacobian and observation. It is easier to find the reasons of singularity compared with the method based on the Jacobian matrix. For example, at the configuration of φ = 0◦ and θ = 70.5288◦ as shown in Fig. 12(b), the four linear dependent wrenches are obtained since the coefficients of the outer product are far smaller than those generated by other constraints or actuations which do not contain these four and almost tend to zero while the rank of the matrix composed by the Plücker coordinates of lD, 1 , lD, 2 , lD, 3 and lC, 1 is still 4.

292

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

7. Conclusion Mainly drawing on GA, this paper proposes a visual, concise and efficient approach to determine motions, constraints, mobility and singularity of parallel mechanisms. The following conclusions are drawn: 1. By introducing the fundamentals of CGA, the geometric elements such as point, line, plane, circle, sphere and their relations are characterized by a single formula using four basic elements in a concise form. This leads to CGA expressions visually and concisely of motions and constraints, whose relations in physical meaning are characterized by the shuffle product. 2. An analytical approach based upon CGA to determine the unknown constraints (motions) from the known motions (constraints) in all situations of parallel mechanism is proposed. The merit of this approach lies in that the action lines (axes) of the unknown constraints (motions) in common situations would be determined analytically only by drawing some auxiliary points, lines and planes. 3. A procedure is demonstrated to obtain the number and property of mobility, as well as the axes of motions allowed by linear independent constraints that can be distinguished in G6 by the criterion defined in this paper using the outer product. 4. Two indices of singularity are defined to identify all singular configurations of parallel mechanisms in the light of the shuffle and outer products. 5. An example is given to illustrate the effectiveness of this approach, whose merit is more beneficial to the kinematic analysis and design of parallel mechanisms to be carried out in automatic and visual manner using computer programming languages. Acknowledgments This research work was supported by the National Natural Science Foundation of China (NSFC) under Grant No. 51675366 and 51475321, and Tianjin Research Program of Application Foundation and Advanced Technology under Grant No. 15JCZDJC38900 and 16JCYBJC19300. References [1] J.M. Rico, B. Ravani, On mobility analysis of linkages using group theory, ASME J. Mech. Design 135 (2003) 70–80. [2] Z. Huang, Q.J. Ge, A simple method for mobility analysis using reciprocal screws, in: Proceedings of ASME Design Engineering Technical Conferences and Computers and Information in Engineering Conference, Philadelphia, United States, 2006, pp. 1229–1237. [3] J. Zhao, F. Chu, Z. Feng, Kinematics of spatial parallel manipulators with tetrahedron coordinates, IEEE Trans. Robot 30 (1) (2014) 233–243. [4] G. Gogu, Mobility of mechanisms: a critical review, Mech. Mach. Theory 40 (2005) 1068–1097. [5] T.G. Ionescu, Terminology for mechanisms and machine science, Mech. Mach. Theory (2003) 38. [6] Z. Huang, Q.C. Li, H.F. Ding, Theory of Parallel Mechanisms, Springer, Netherlands, 2013. [7] L.-W. Tsai, Robot Analysis: the Mechanics of Serial and Parallel Manipulators, Wiley-Interscience, New York, 1999. [8] X.J. Liu, X. Chen, M. Nahon, Motion/force constrain ability analysis of lower-mobility parallel manipulators, ASME J. Mech. Robot 6 (3) (2014), doi:10. 1115/1.4026632. [9] W. Ye, Y.F. Fang, S. Guo, Reconfigurable parallel mechanisms with planar five-bar metamorphic linkages, Sci. China Tech. Sci. 57 (2014) 210–218, doi:10.1007/s11431- 013- 5433- 9. [10] J. Bałchanowski, Topology and analysis of the singularities of a parallel mechanism with three degrees of freedom, Arch. Civil Mech. Engine. 14 (1) (2014) 80–87. [11] M.K. Lee, K.W. Park, Workspace and singularity analysis of a double parallel manipulator, IEEE/ASME Trans Mechatronics 5 (4) (20 0 0) 367–375. [12] S.L. Cheng, H.T. Wu, C.Q. Wang, et al., A novel method for singularity analysis of the 6-SPS parallel mechanisms, Sci. China Tech. Sci. 54 (2011) 1220– 1227, doi:10.1007/s11431-011-4323-2. [13] C. Gosselin, T. Laliberte, A. Veillette, Singularity-free kinematically redundant planar parallel mechanisms with unlimited rotational capability, IEEE Trans. Robot 31 (2) (2015) 457–467. [14] D. Zlatanov, R.G. Fenton, B. Benhabib, A unifying framework for classification and interpretation of mechanism singularities, ASME J. Mech. Design 117 (4) (1995) 566–572. [15] M.H.F. Kaloorazi, M.T. Masouleh, S. Caro, Determination of the maximal singularity-free workspace of 3-DOF parallel mechanisms with a constructive geometric approach, Mech. Mach. Theory 84 (2015) 25–36. [16] O. Bohigas, D. Zlatanov, L. Ros, et al., A general method for the numerical computation of manipulator singularity sets, IEEE Trans. Robot 30 (2) (2014) 340–351. [17] D. Kanaan, P. Wenger, S. Caro, et al., Singularity analysis of lower mobility parallel manipulators using Grassmann–Cayley algebra, IEEE Trans. Robot 25 (5) (2009) 995–1004. [18] X. Chen, X.J. Liu, F.G. Xie, Screw theory based singularity analysis of lower-mobility parallel robots considering the motion/force transmissibility and constrainability, Math Problems Eng. 2015 (2015) 11 487956. [19] X.W. Kong, A. Johnson, Classification of screw systems composed of three planar pencils of lines for singularity analysis of parallel mechanisms, ASME J. Mech. Robot. 6 (2) (2014) 149–168. [20] O. Altuzarra, O. Salgado, V. Petuya, et al., Point-based Jacobian formulation for computational kinematics of manipulators, Mech. Mach. Theory 41 (12) (2006) 1407–1423. [21] Z. Huang, J.F. Liu, Q.C. Li, A unified methodology for mobility analysis based on screw theory, in: L.H. Wang, F F Xi (Eds.), Smart Devices and Machines for Advanced Manufacturing, Springer, London, 2008, pp. 49–78. [22] T. Huang, S. Yang, M.X. Wang, et al., An approach to determining the unknown twist/wrench subspaces of lower mobility serial kinematic chains, ASME J. Mech. Robot 7 (3) (2015) 9 031003. [23] J.J. Yu, S.Z. Li, X. Pei, et al., A unified approach to type synthesis of both rigid and flexure parallel mechanisms, Sci. China Tech. Sci. 54 (2011) 1206– 1219, doi:10.1007/s11431-011-4324-1. [24] J.S. Dai, J.R. Jones, Null space construction using cofactors from a screw algebra context, Proc. Math. Phys. Eng. Sci. 458 (2002) 1845–1866 (2024). [25] C.D. Meyer, Matrix Analysis and Applied Linear Algebra, Society for Industrial and Applied Mathematics, Philadelphia, PA, 20 0 0.

X. Huo et al. / Mechanism and Machine Theory 116 (2017) 273–293

293

[26] J.S. Dai, J.R. Jones, A linear algebraic procedure in obtaining reciprocal screw systems, J. Rob. Syst. 20 (7) (2003) 401–412. [27] J. Angeles, C. Chen, Generalized transmission index and transmission quality for spatial linkages, Mech. Mach. Theory 42 (9) (2007) 1225–1237. [28] J.A. Saglia, J.S. Dai, D.G. Caldwell, Geometry and kinematic analysis of a redundantly actuated parallel mechanism that eliminates singularities and improves dexterity, ASME J. Mech. Design 130 (12) (2008) 1245011–1245015. [29] D. Hestenes, New Foundations for Classical Mechanics, 2nd ed., Springer, Nerherlands, 1999. [30] W.K. Clifford, On the classification of geometric algebras, in: R. Tucker (Ed.), Mathematical Papers, Macmillian Publishers, London, 1882, pp. 397–401. [31] I. Porteous, Clifford Algebras and the Classical Groups, Cambridge University Press, United Kingdom, 1995. [32] D. Hestenes, New tools for computational geometry and rejuvenation of screw theory, in: E.J. Bayro-Corrochano, G. Scheuermann (Eds.), Geometric Algebra Computing in Engineering and Computer Science, Springer, Berlin, 2010, pp. 3–35. [33] C. Perwass, W. Forstner, et al., Uncertain geometry with circles, spheres and conics, in: R. Klette, R. Kozera, L. Noakes, et al. (Eds.), Geometric Properties from Incomplete Data, Computational Imaging and Vision, 31, Springer-Verlag, Netherlands, 2006, pp. 23–41. [34] G. Sommers, Computergrafik, G. Datenverarbeitung, et al., Geometric Computing with Clifford Algebras, Springer, Berlin Heidelberg, 2001. [35] E. Bayro-Corrochano, L. Reyes-Lozano, J. Zamora-Esquivel, Conformal geometric algebra for robotic vision, J. Math. Imaging Vision 24 (1) (2006) 55–81. [36] J.S. Kim, H.J. Jin, J.H. Park, Inverse kinematics and geometric singularity analysis of a 3-SPS/S redundant motion mechanism using conformal geometric algebra, Mech. Mach. Theory 90 (2015) 23–36. [37] Z. Fu, W. Yang, Z. Yang, Solution of inverse kinematics for 6r robot manipulators with offset wrist based on geometric algebra, ASME J. Mech. Robot 5 (3) (2013) 310081–310087. [38] J. Zamora-Esquivel, E. Bayro-Corrochano, Robot object manipulation using stereoscopic vision and conformal geometric algebra, Appl. Bionics Biomech. 8 (2011) 411–428. [39] T.K. Tanev, Geometric algebra approach to singularity of parallel manipulators with limited mobility, in: J. Lenarcic, P. Wenger (Eds.), Advances in Robot Kinematics: Analysis and Design, Springer, Netherlands, 2008, pp. 39–48. [40] T.K. Tanev, Singularity analysis of a 4-D of parallel manipulator using geometric algebra, in: J. Lenarcic, B. Roth (Eds.), Advances in Robot Kinematics: Mechanism and Motion, Springer, Netherlands, 2006, pp. 275–284. [41] C. Perwass, Geometric Algebra with Applications in Engineering, Springer, Berlin Heidelberg, 2009. [42] L. Dorst, D. Fontijne, S. Mann, in: Geometric Algebra for Computer Science (Revised edition): an Object-oriented Approach to Geometry, Morgan Kaufmann Publishers, San Francisco, 2009, pp. 80–83. [43] D. Hildenbrand, Foundations of Geometric Algebra Computing, Springer, Berlin Heidelberg, 2012. [44] J.M. Selig, Geometric Fundamentals of Robotics, Springer, London, 2005. [45] I. Bonev, Geometric analysis of parallel mechanisms Ph.D. Thesis, Universite Laval, Departement de GenieMecanique, Quebe, 2002.