Kinematic joint matrix and block diagram for a group of parallel manipulators

Abstract There are various matrices to represent parallel mechanisms. It is essential to design a kind of approach to not only denote the parallel structures but also disclose the joint directions. In this paper, a novel methodology called the kinematic joint matrix (KJM) is proposed. It possesses the mapping relations with parallel manipulators with three kinds of kinematic joints. The size of such matrix is smaller when compared with that of topology matrix. A series of two to six degrees-of-freedom parallel architectures is denoted by the KJM. A convenient approach using a special block diagram is introduced to distinguish various kinds of kinematic joint matrices. In addition, detailed comparisons between KJM and topology matrix are investigated. Three regulations are proposed for the latter to be applicable to parallel mechanisms.


Introduction
The conventional parallel mechanism is composed of at least two kinematic limbs between the fixed platform and the moving plate. The generalized parallel manipulator utilizes a special linkage mechanism instead of a rigid linkage for the mobile platform, or is equipped with extra subchains between kinematic limbs [1][2][3]. Generally, the parallel mechanism has smaller reachable workspace compared with its counterpart (the serial manipulator/robot). However, since there are multiple supporting chains and actuations are attached to the fixed platform, the parallel robot can achieve high speed and acceleration, high stiffness and high accuracy [4]. These characteristics gain its applications in parallel kinematic machine [5], picking-and-placing robot arm [6,7], flight simulator [8], rehabilitation robot [9], etc.
Employing matrix to present and identify the linkage mechanism has attracted a lot of research. The first widely used matrix is topology matrix, which was proposed by Yan [10] to represent the topological structure of linkage mechanism. This matrix was constituted of linkages, joint types and connection points. It was also a practical approach to represent the mechanisms with variable topologies [11]. Yan and Kuo [12] designed a directionality topology matrices to describe linkage mechanisms. The joint types, connection points and joint sequence incident for any two rods were included in this method. To represent the joint types and sequences with a unified method, they further developed the hexadecimal topology matrix to be conveniently utilized in coding. In a similar manner, the authors in ref. [13] introduced the three-dimensional adjacency matrix in which a 16-bit coding string could include the displacement subsets data and relative joints relationships.
The adjacency matrix is another popular research. Slaboch and Voglewede [14] designed the adjacency matrix to denote the topology structures of planar linkage mechanisms. Only two elements 1 and 0 are employed in this matrix to indicate the connection status. This adjacent matrix was also utilized in ref. [15] to identify two distinct configurations of a polygonal linkage mechanism. Moreover, Li and Dai [16] developed the augmented adjacency matrix that contained the joint axis relations. Pucheta and Cardona [17] introduced the type adjacency matrix, where the rigid rod and flexible rod were indicated separately. Different elements 0-4 were used for various joint types.
There are also some other kinds of matrices, e.g. the authors in ref. [18] utilized two classes of matrices for linkage mechanisms with multiple loops. The first class was the circuit matrix that containing the joints information based on the loop directions. The other was the sequence matrix where the joint sequences were provided in each closed loop.
It is still a challenging topic to put forward a kind of matrix with small size to indicate the parallel manipulator. This paper proposes the kinematic joint matrix (KJM) to map with the parallel mechanism. This approach is further developed based on the matrix in ref. [19]. The rest of this paper is organized as follows: Section 2 introduces the KJM and provides samples for two to six degrees-of-freedom (DOFs) mechanisms. The detailed characteristics of the KJM are described in Section 3, followed by Section 4 that studies the methodology to distinguish different kinematic joint matrices. The comprehensive comparisons between this matrix and the widely used topology matrix are conducted in Section 5. The conclusions are provided in Section 6.

Design approach
In this section, the KJM that can represent linkage mechanism is introduced in detail. The basic module of the KJM can be represented as where m ij (i, j = 1,2,3) in the ith row and jth column element of this square matrix denotes the kinematic joint type within the parallel mechanism. This matrix can be divided into three categories. The diagonal elements m ii of Eq. (1) can display one kind of kinematic joint. Three elements above or below the main diagonal can indicate additional two kinds of kinematic pairs, respectively. In such a way, this matrix has the ability to imply linkage mechanisms under some conditions. The parallel mechanism with three kinds of joints can be expressed by the KJM, as demonstrated below   1  2  2  1  2  2  1  2  2   3  1  2  3  1  2  3  1  2   3  3  1  3  3  1  3  3  1 ... j j j j j j j j j j j j j j j j j j j j j j j j j j j (2) where j 1 , j 2 and j 3 indicate three sorts of kinematic joints, respectively. The vertical dash line is employed to distinguish adjacent square matrices. In the KJM, the written sequence is from left to right. In each group of kinematic pair, the corresponding joint position will be filled once this position in the left square matrix is already filled, to achieve a compact format.
The widely used prismatic (P) joint, revolute (R) joint and parallelogram (Pa) joint are taken as examples. The global coordinate system attached to the fixed platform is utilized as a reference. These joints are further constrained in this case. Each prismatic joint axis can be parallel to X, Y or Z direction, denoted as P X , P Y and P Z , respectively. The rotational joint axis can parallel to X, Y or Z direction separately, represented, respectively, as R X , R Y and R Z . Every Pa joint can be placed in planes that are parallel to XOY , XOZ or YOZ plane, and, respectively, shown as P XY , P XZ and P YZ . Thereafter, each category of kinematic joint is further divided into three cases, which reveals that each component position is unique. According to definition of Eq. (1), P X , P Y , P Z , R X , R Y , R Z , P XY , P XZ , P YZ can be placed in the positions of m 11   matrix, which helps to distinguish two kinematic joint matrices. The KJM under this circumstance can be formulated as ⎡ ⎢ ⎣ In this kind of parallel architectures, each kinematic chain has the identical joint type and number. Take the consideration of the coupling movement of the parallelogram pair, only one Pa joint is permitted in one kinematic limb. The analysis is further limited to the fully parallel mechanism, where the number of chains is same as the DOF of the whole manipulator. In addition, the number of joints of each chain is equal to the DOF of the parallel mechanism, and only the joint connected to the fixed platform is equipped with an actuator. For a m (2 ≤ m ≤ 6) DOFs parallel mechanism that qualifies the abovementioned requirements, the maximum size of the corresponding matrix is 3-by-3m.
Some feasible parallel structure examples denoted by the proposed matrices are introduced accordingly. The original matrix for a 2-DOF parallel mechanism is given as Since Eq. (4) has many null elements and no revolute joint, it can be further simplified as a 2-by-4 matrix after deleting the third-row and third-column of each 3-by-3 matrix module. The simplification format is shown below, Both Eqs. (4) and (5) can represent the 2-PPa parallel mechanism, as illustrated in Fig. 1. This symmetrical mechanism belongs to planar translational parallel architecture. The active prismatic joints of two branches are in the same direction, and the parallelogram joints of both branches move in the same plane.
The matrix for a 3-DOF parallel structure is constructed as  Eq. (6) can describe a spatial 3-PPaP parallel manipulator with three identical chains, as depicted in Fig. 2. In every chain, two prismatic joints are perpendicular to each other, and the active sliding joint is in the plane containing of the Pa kinematic pair.
The matrix for a 4-DOF parallel mechanism is seen in Eq. (7) can define a 4-PPaPR parallel manipulator as demonstrated in Fig. 3. This mechanism has four chains, which can be divided into two sets with same joints axes configurations, limb one and limb two, limb three and limb four. The two prismatic joints of each chain are perpendicular to each other. In the limb one or limb two, the parallelogram joint plane is perpendicular to the axis of the passive sliding joint, while in the limb three or limb four, the parallelogram module plane is perpendicular to the axis of the active prismatic joint. All these revolute joints axes are in the same direction.
The matrix for a 5-DOF parallel structure is generated as One possible parallel mechanism corresponding to the Eq. (8) is seen in Fig. 4. It is a 5-PPaPRR parallel manipulator. In each kinematic chain, the axes of two sliding joints are perpendicular and the axes of two revolute joints are orthogonal. In each branch, the driving prismatic joint axis moves in the plane containing of the parallelogram unit. Except the kinematic limb five, all the other limbs are identical.
The matrix for a kind of 6-DOF parallel mechanism is listed below Eq. (9) may indicate a 6-PPaPRRR parallel manipulator, as illustrated in Fig. 5. Each limb contains of two orthogonal sliding joints, three orthogonal revolute joints and one parallelogram module. The active sliding direction of each kinematic chains is different. The axes of the driving joints in limb one/four, limb two/five/six and limb three are parallel to X, Z and Y directions, respectively.
To better illustrate the function of the KJM, several parallel structures with the corresponding kinematic joint matrices are provided in Appendix.

Features of kinematic joint matrix
The size of the KJM is small. For the m degree-of-freedom fully parallel mechanism cases mentioned in Section 2, the largest original matrix size is 3-by-3m, although the number of all linkages is m 2 +m + 2. The 2T mechanism matrix has a simplified version due to no rotational joints. The size is 2-by-4.
The KJM can reveal the joints categories, directions and numbers utilized in the proposed parallel architecture. Since many parallel mechanisms are composed of several identical limbs and there are no connection rods among different limbs, the possible parallel structure(s) can be obtained according to the corresponding KJM. The relation from the KJM to the parallel mechanisms is one-to-many mapping, i.e. the KJM shown in the following form Eq. (10) can denote both P X P XY /P Y P XY structure (seen in Fig. 6(a)) and P XY P XY /P X P Y structure (seen in Fig. 6(b)).
Furthermore, the first branch of Fig. 6(a) can be P X P XY or P XY P X . This scenario also demonstrates that the specific joint sequence in each kinematic chain is not obtained.
The abovementioned case can be avoided if the parallel mechanism chains are properly predefined, e.g. only one Pa joint is permitted in one kinematic chain and the prismatic joint is connected to the fixed platform. However, the one-to-many mapping relationship might happen when the matrix is complicated. The matrix form shown in the following expression: Fig. 7 Fig. 7(b)).

Discrimination of kinematic joint matrix
There are two reasons indicating the KJM is insufficient to directly distinguish any two parallel structures. The first factor is the one-to-many mapping relations with parallel mechanisms. The second factor is that various kinematic joint matrices can be obtained if the parallel manipulator is placed in different coordinate systems (e.g. the P X joint in one coordinate system might be P Y or P Z joint in another reference system).
However, it is meaningful to propose an approach for discriminating different kinds of matrices, since any two parallel manipulators expressed by different categories of kinematic joint matrices are distinct. It also means the second factor can be resolved. It is evident that two kinematic joint matrices are different if the total numbers for prismatic joints or revolute joints or Pa joints are not the same. This question is further constrained to distinguish the matrices with identical numbers for prismatic joints, rotary joints and Pa joints, respectively. For a given KJM representing parallel mechanisms, the total numbers of P X , P Y , P Z , R X , R Y , R Z , P XY , P XZ and P YZ joints are expressed separately as N 11 , N 22 , N 33 , N 32 , N 31 , N 21 , N 12 ,  N 13 and N 23 . The i, j, k are integers ranging from 1 to 3. The following numbers are predefined A unique block pattern is introduced, as shown in Fig. 8(a). In this block pattern, the first column is for N ii . The second column is filled by N 32 , N 31 and N 21 . The last column is for N 12 , N 13 and N 23 . An example is illustrated in Fig. 8(b). Take the N 11 , N 32 , N 12 and N 13 as examples, the physical relevance (inner feature) among them is the common subscript X in P X , R X , P XY and P XZ . The external feature is based on the subscripts of these filled elements N ij in this pattern. If the first column is selected, each element of the second column can be decided by the elements of the first column and the other rows. For example, the subscripts a5 and a6 of N a6a5 are, respectively, the minimal and maximum values between j and k (subscripts of N jj , N kk ). Each element of the third column can be concluded by the directly connected two columns (the two elements of the first column), i.e. N a1a2 is directly connected by N a6a5 and N a4a3 . Then the subscripts a1 and a2 are solved, respectively, as the minimal and maximum elements of the subscripts of N ii , N jj .
Before filling elements into the block pattern, comparing N ii , N jj , N kk (i, j, k = 1,2,3.) and the following expression can be obtained The following scenarios can be found In cases (I), (II), (V), the first column of the block pattern is N ii , N jj and N kk . The final pattern is the same as in Fig. 8(a). For case (III), the first column of the pattern can be N ii , N jj and N kk or N ii , N kk and N jj . The whole patterns are the same. In case (IV), the first column of the pattern is listed as N ii , N kk and N jj . In case (VI), the first column of the block pattern can be N ii , N jj and N kk or N jj , N ii and N kk . The contents are identical in any selection. In case (VII), the first column of the block pattern is listed as N jj , N ii and N kk .
The other situations happen when N 11 = N 22 = N 33 . Before classifying the remaining cases, comparing N a1a2 , N a3a4 and N a5a6 yields (15) where N b1b2 and N b5b6 are, respectively, the largest and smallest among N a1a2 , N a3a4 and N a5a6 . N b3b4 is the rest of them.
The remaining scenarios are concluded as In case (VIII), the first column of the block pattern is N ii , N jj and N kk . In case (IX), the first column of the pattern can be either N ii , N jj and N kk or N jj , N ii and N kk . In case (X), the first column of the pattern can be either N ii , N jj and N kk or N ii , N kk and N jj . In case (XI), the first column of the pattern can be listed in any sequence to finally derive a unique pattern.
All the feasible situations for the block pattern are summarized in Eqs. (14) and (16). As long as two kinematic joint matrices can create identical block patterns, these two matrices belong to the same kind of matrix and can express the same parallel mechanism(s). One sample is provided below. Two kinematic joint matrices are listed as P P P P P P P P The parameters for these two aforementioned matrices are computed separately as Following the above method, these two scenarios can be classified into the case (I). Their final block patterns can both be written as seen in Fig. 9, which indicates they belong to the same kind of KJM. One feasible 6-DOF parallel structure is illustrated in Fig. 10. According to Fig. 10, Eq. (17) is based on the X1-Y1-Z1 coordinate system, while Eq. (18) is generated in accordance with the X2-Y2-Z2 coordinate system. These two coordinate systems can be transformed by rotation operations.
Therefore, this block pattern is helpful for the enumerations of every possible KJM with predefined conditions.

Illustration of examples
The characteristics of the KJM can be further revealed when compared with the well-known topology matrix proposed by Yan and Kuo [29,30]. The topology matrix M T of a mechanism is a N -by-N square matrix (N denotes the total number of linkages). The ith diagonal elements show the types of the ith linkage. If the ith rod and jth rod (i<j) are connected by a kinematic joint, the ith row and jth column element will be filled by the type of the kinematic pair, and jth row and ith column element will be provided the letter that illustrates this adjacent point. Zero will be assigned to the remaining elements.
Generally, different kinds of topology matrices denote the corresponding mechanisms own different topological structures, which is convenient to distinguish linkage mechanisms. The KJM could not discriminate straightly two distinct linkage mechanisms, as mentioned in  The KJM of Fig. 11(a) is provided as The corresponding KJM of the mechanism in Fig. 11(b) is expressed as The topology matrices of the Figs. 11(a) and (b) mechanisms are the same and are generated as where K F , K Pi and K Li denote the fixed platform, ith sliding linkage and ith kinematic link, respectively. J P and J R mean the prismatic joint and rotational joint separately. The distinction methodology in Section 4 is employed. The corresponding parameters for Eqs. (21) and (22) are separately described as In accordance with Eqs. (14), (24) and (25) However, the topology matrix shown in Eq. (23) is capable to demonstrate the connection status between any two linkages, but it cannot distinguish these two parallel mechanisms. There are too many zero elements since the connection feature of parallel mechanisms is simple. The joint directions that are important in parallel structures cannot be revealed by the topology matrix. The matrix is more complicated, and the matrix size is larger. For this class of parallel mechanisms, the size of the topology matrix size is N-by-N (N= m 2 + m + 2). The topology matrix is insufficient to denote some parallel structures with special linkage dimensions or joint configurations (such as the axes of revolute joints are parallel, or perpendicular or intersecting lines), i.e. parallelogram joint, Sarrus mechanism, Bennett mechanism, Myard mechanism, Goldberg mechanism, Bricard mechanism, spherical 5R mechanism, Agile eye wrist-spherical 3-RRR parallel robot.

Improvements for topology matrix
Inspired by the KJM, some supplementary regulations are suggested for the topology matrix to be employed for parallel mechanisms.

First rule:
The commonly used mechanisms (e.g. (R-R) 2 , (U-U) 2 , (U-U) 3 , (S-S) 2 , (S-S) 3 ) in parallel structures can be treated as one module to generate the corresponding topology matrix. Fig. 11(a) is taken as an example. The parallelogram unit of each kinematic chain is regarded as one generalized linkage (linkages 2, 4, 5 in Fig. 13). The modified parallel mechanism is shown in Fig. 13, and the corresponding topology matrix is expressed as Figure 13. The parallel mechanism with generalized linkages.
Compared to Fig. 11(a) and Eq. (23), this mechanism is simplified, and the matrix size is greatly reduced. Furthermore, since the parallelogram module is predefined, the feature of the whole mechanism is evidently expressed and simple to be understood.

Second rule:
The kinematic joint with special configurations may be represented in topology matrix with detailed information. Various types of kinematic prismatic and rotational joints with parallel, orthogonal or intersecting axes [31][32][33][34][35] have been defined and classified to name different parallel architectures, but these concepts have not yet been employed into the topology matrix to demonstrate more detailed construction information. Take the rotational joint as an example, the classification concept in the cited references [31][32][33][34][35] will be utilized with a more specific definition, and the axes directions will be indicated in some cases. Four kinds of revolute joints will be defined as J RX , J RY , J RZ and J RO1 , to denote the axes are parallel to X axis, Y axis, Z axis or intersect at the same point O 1 . Two similar parallel mechanisms equipped with only revolute joints are illustrated in Figs. 14(a) and (b). The corresponding topology matrices for Figs. 14(a) and (b) are separately expressed as With the above definitions of revolute joints, the planar and spherical 3-RRR parallel architectures can be indicated and distinguished by different topology matrices. Their particular features will be demonstrated too.
Third rule: A unified naming sequence is essential for topology matrix to state and distinguish parallel mechanisms. A general naming convention is proposed as below.
Step one: Define the fixed platform as the first rod.
Step two: Identify the shortest loop (minimum number of linkages) containing the mobile platform and the fixed platform. The starting linkage connected to the fixed platform will be chosen from the shortest chain. Then naming the following linkages until the last rod of this closed loop. The first rule will be employed to simplify the procedure.
Step three: In the remaining kinematic limbs containing of the moving platform, beginning with the shortest kinematic branch and naming from linkage attached to the moving platform.
Step four: Repeat step three until at least one linkage of each kinematic chain has been counted.
Step five: Naming the remaining subchains to deal with the coupling chains in parallel mechanisms. Starting from the chain that has the smallest number in its corresponding loop. The initial linkage of this chain will be the rod that is connected to the linkage with the previously defined smallest number.
The priority for these steps is to begin with any chain if there are multiple identical chains. If there are many shortest loops/chains, starting from the loop/chain with the least DOF. One planar parallel structure using this naming sequence is employed as an example, as seen in Fig. 15. Its corresponding topology matrix is listed as In analyzing the topology matrices of parallel mechanisms, it is okay to use other kinds of naming conventions as long as the same sequence is utilized to maintain consistency. These concepts can also be modified and expanded to be employed in other motion transmission systems (e.g. linkage mechanism and gear transmission system).

Conclusions
The KJM is proposed in this research. This novel matrix can indicate parallel manipulators with three kinds of kinematic pairs. The corresponding kinematic joint matrices and the virtual prototypes for a group of two to six DOF parallel manipulators are demonstrated. The KJM has small size and can indicate the joint directions. It is inadequate to represent a concrete parallel mechanism due to various coordinate systems and the one-to-many mapping relations with the parallel structures. Therefore, a special block pattern is proposed to distinguish different kinds of kinematic joint matrices. This kind of block pattern is also beneficial to identify the same kind of matrices, eliminate repeated kinematic joint matrices and has the potential to automatically generate all reliable kinematic joint matrices via program under given conditions. A detailed comparison between the KJM and the topological matrix is implemented. Considering the features of the KJM, three improvements are recommended for the topological matrix to be suitable for parallel manipulators, for instance using generalized sub-mechanism modules, denoting kinematic pairs with directions and proposing a unified naming convention.
The future work will concentrate on developing the KJM into a systematic approach, to represent two to six DOFs parallel manipulators without constraining the sum of joints categories.