**4. Jacobian analysis using screw theory**

48 Serial and Parallel Robot Manipulators – Kinematics, Dynamics, Control and Optimization

, therefore

2 22 ( )( )( ) *i i ii d xx yy zz*

 

*xh r r g yh r r g*

 

cos sin

*i ii*

*zh r r*

*i*

*d d*

*C*

*<sup>C</sup> R* is the rotation matrix from *Ci* to *A* ,

*i*

*i*

*i*

*A*

11 21 12 22 13 23

*i ii i i ii i*

Coordinates ( ,,,) *CAxyz i iiii* are connected to the base platform with their *<sup>i</sup> x* axes aligned

in *Ci* as

sin sin cos cos cos

*ii i i*

*i*

*i i A C*

cos sin 0 sin cos 0 0 01

 

 

*i i*

<sup>1</sup> cos ( ) sin ( ) sin *ii ii*

<sup>1</sup> sin ( ) cos ( ) sin cos *ii ii*

 

*d*

*i x x y y d*

*i i x x y y*

 

 

*C ii R* 

By equating the right sides of (3) and (4), and solving the obtained equation,

*i i*

cos sin cos cos sin sin

 

<sup>2</sup> ( )( ) *i ii ii d pb a pb a* . (5)

 

 

directions, with their *<sup>i</sup> <sup>z</sup>* axes perpendicular to the fixed

, (8)

*i iC i r a Rd* , (9)

. (10)

*<sup>i</sup>* and

, (11)

. (12)

*<sup>i</sup>* can

, (6)

. (7)

Left hand side of (4) is the definition of *<sup>i</sup> d*

with the rotary actuators in the *is*

and from the geometry is clear that

platform. Thus, one can express vector *<sup>i</sup> d*

where,

where *<sup>i</sup> A*

be calculated as follows:

Using Euclidean norm, *<sup>i</sup> d* can be expressed as:

Singularities of a PM pose substantially more complicated problems, compared to a serial manipulator. One of the first attempts to provide a general framework and classification may be traced back to Gosselin and Angeles (1990) ,who derived the input–output velocity map for a generic mechanism by differentiating the implicit equation relating the input and output configuration variables. In this way, distinct jacobian matrices are obtained for the inverse and the direct kinematics, and different roles played by the corresponding singularities are clearly shown.

For singularity analysis other methods rather than dealing with jacobian matrix are also available. Pendar et al. (2011) introduced a geometrical method, namely *constraint plane method*, where one can obtain the singular configurations in many parallel manipulators with their mathematical technique. Lu et al. (2010) proposed a novel analytic approach for determining the singularities of some 4-DOF parallel manipulators by using *translational/rotational jacobian matrices*. Piipponen (2009) studied kinematic singularities of planar mechanisms by means of *computational algebraic geometry* method. Zhao et al. (2005) have proposed *terminal constraint* method for analyzing the singularities based on the physical meaning of reciprocal screws.

Gosselin & Angeles (1990) have based their works on deriving the jacobian matrix. They performed this by defining three possible conditions. In these conditions the determinant of forward jacobian matrix or inverse jacobian matrix is investigated. They have shown that having dependent Plücker vectors in a parallel manipulator is equivalent to zero determinant of the forward jacobian matrix and then a platform singularity arises.

In this section the jacobian analysis of the proposed PMs are approached by using the theory of screws. Zhao et al. (2011) proposed a new approach using the screw theory for force analysis, and implemented it on a 3-DOF 3-RPS parallel mechanism. Gallardo-Alvarado et al. (2010) presented a new 5-DOF redundant parallel manipulator with two moving platforms, where the active limbs are attached to the fixed platform. They find the jacobian matrix by means of the screw theory.

A class of series-parallel manipulators known as 2(3-RPS) manipulators was studied by Gallardo-Alvarado et al. (2008) by means of the screw theory and the principle of virtual work. Gan et al. (2010) used the screw theory to obtain the kinematic solution of a new 6- DOF 3CCC parallel mechanism. Gallardo-Alvarado et al. (2006) analyzed singularity of a 4- DOF PM by means of the screw theory.

Hereafter we derive the jacobian matrices of the proposed mechanisms using screw theory. Joint velocity vector in the redundant mechanism, Re . *<sup>d</sup> q* , is an 8 1 vector:

$$\dot{\vec{q}}^{\text{Re}\,d.} = \begin{bmatrix} \dot{\theta}\_1 & \dot{\theta}\_2 & \dot{\theta}\_3 & \dot{\theta}\_4 & \dot{d}\_1 & \dot{d}\_2 & \dot{d}\_3 & \dot{d}\_4 \end{bmatrix}^T \tag{13}$$

where *<sup>i</sup>* and *<sup>i</sup> d* are the angular and linear velocities of the rotary and linear actuators, respectively. However, joint velocity vector in the non-redundant mechanism, *Non d* Re . *q* , is a 6 1 vector:

$$\dot{\bar{q}}^{\text{Non}-\text{Re}\,d.} = \begin{bmatrix} \dot{\theta}\_1 & \dot{\theta}\_2 & \dot{\theta}\_3 & \dot{d}\_1 & \dot{d}\_2 & \dot{d}\_3 \end{bmatrix}^T. \tag{14}$$

The linear and angular velocities of the moving platform are defined to be *v* and , respectively. Thus, *x* can be written as a 6 1 velocity vector;

$$\dot{\vec{\mathbf{x}}}^{\top} = \begin{bmatrix} \vec{v}^{T} & \vec{\boldsymbol{\alpha}}^{T} \end{bmatrix}. \tag{15}$$

Exploiting Higher Kinematic Performance –

Fig. 5. Infinitesimal screws.

cos

*i i*

Note that in (21), cos *ii i i sd d*

*i i*

*i i i i*

*s d d*

*s d <sup>b</sup> d*

6,

*r i*

\$

cos ˆ

*i*

( ) *T T i ii*

*d bd x d*

 

*i i*

*d d*

the resultant is as follows;

.

*P i*

Similarly, if one takes the orthogonal product of both sides of (19) with reciprocal screw

( )( ) cos

 

*sd sd b xd*

 

*i P i i i*

cos cos *i i T T i i*

*d d*

Finally, using (20) and (21), jacobian matrices Re . *<sup>d</sup> xJ* and Re . *<sup>d</sup>*

*ii ii*

, *i* 1,2,3,4 . (20)

 

*qJ* are expressed as;

. (21)

Using a 4-Legged Redundant PM Rather than Gough-Stewart Platforms 51

Jacobian matrices relate *q* and *x* as follow;

$$J\_x \dot{\vec{x}} = J\_q \dot{\vec{q}} \tag{16}$$

where *xJ* and *qJ* are forward and inverse jacobian matrices, respectively. If one defines *J* as follows;

$$J = J\_q^{-1} J\_\chi \,. \tag{17}$$

Thus *q* ,and *x* can be simply related as;

$$
\dot{\vec{q}} = \int \dot{\vec{x}}\,.\tag{18}
$$

The concept of reciprocal screws is applied to derive *xJ* and *qJ* (Tsai, 1998; 1999). The reference frame of the screws is point *P* of the moving platform. Fig. 5 shows the kinematic chain of each leg, where universal joints are replaced by intersection of two unit screws, 1 ˆ \$ and 2 ˆ \$ . 1, 1 1, ˆ \$ ( ) *i ii i s bd s* and 2, 2 2, ˆ \$ ( ) *i i ii i s bd s* where 1,*<sup>i</sup> s* and 2,*<sup>i</sup> <sup>s</sup>* are unit vectors along the inactive and active joints of each universal joint, respectively. Spherical joints in each leg are replaced by intersection of three unit screws, 4 ˆ \$ , 5 ˆ \$ , and 6 ˆ \$ . 4, 4 4, ˆ \$ *<sup>i</sup> i i s b s* , 

5, 5 5, ˆ \$ *<sup>i</sup> i i s b s* , and 6, 6 6, ˆ \$ *<sup>i</sup> i i s b s* , where 4, 1, *i i s s* , 6,*<sup>i</sup> <sup>s</sup>* is the unit vector along the linear

actuator, and 5, 6, 4, *i ii s ss* . 3 3, <sup>0</sup> <sup>ˆ</sup> \$ *<sup>i</sup> s* explains the prismatic joint, as well. It is to be noted that 3, 6, *i i s s* . Each leg can be assumed as an open-loop chain to express the instant twist of the moving platform by means of the joint screws:

$$\begin{aligned} \hat{\mathbf{S}}\_{P} &= \dot{\nu}\_{i} \hat{\mathbf{S}}\_{1,i} + \dot{\theta}\_{i} \hat{\mathbf{S}}\_{2,i} + \dot{d}\_{i} \hat{\mathbf{S}}\_{3,i} + \dot{\phi}\_{1,i} \hat{\mathbf{S}}\_{4,i} \\ &+ \dot{\phi}\_{2,i} \hat{\mathbf{S}}\_{5,i} + \dot{\phi}\_{3,i} \hat{\mathbf{S}}\_{6,i} \end{aligned} \tag{19}$$

By taking the orthogonal product of both sides of (19) with reciprocal screw 3, 1, 3, ˆ \$ *<sup>i</sup> r i i i s b s* , one can eliminate the inactive joints and rotary actuator which yields to

Fig. 5. Infinitesimal screws.

50 Serial and Parallel Robot Manipulators – Kinematics, Dynamics, Control and Optimization

[ ] *T T x v* 

where *xJ* and *qJ* are forward and inverse jacobian matrices, respectively. If one defines *J*

1

The concept of reciprocal screws is applied to derive *xJ* and *qJ* (Tsai, 1998; 1999). The reference frame of the screws is point *P* of the moving platform. Fig. 5 shows the kinematic chain of each leg, where universal joints are replaced by intersection of two unit screws, 1

> *i i ii i*

*s bd s* 

along the inactive and active joints of each universal joint, respectively. Spherical joints in

that 3, 6, *i i s s* . Each leg can be assumed as an open-loop chain to express the instant twist of

2, 5, 3, 6,

*ii ii*

 

ˆˆˆ ˆ ˆ \$\$\$ \$ \$ ˆ ˆ \$ \$

*P ii ii ii ii*

By taking the orthogonal product of both sides of (19) with reciprocal screw

1, 2, 3, 1, 4,

, one can eliminate the inactive joints and rotary actuator which yields to

 *d*

2,

where 1,*<sup>i</sup> s*

ˆ \$ , 5 ˆ

explains the prismatic joint, as well. It is to be noted

. (19)

. (15)

*<sup>x</sup> <sup>q</sup> Jx J <sup>q</sup>* , (16)

*q x J JJ* . (17)

*<sup>q</sup> J x* . (18)

and 2,*<sup>i</sup> <sup>s</sup>*

\$ , and 6 ˆ

is the unit vector along the linear

 and

,

ˆ \$

4,

*i i*

*s b s* 

 ,

are unit vectors

\$ . 4, 4

ˆ \$ *<sup>i</sup>*

The linear and angular velocities of the moving platform are defined to be *v*

can be written as a 6 1 velocity vector;

as follow;

respectively. Thus, *x*

as follows;

Thus *q* ,and *x* 

and 2 ˆ

5

ˆ \$ *<sup>i</sup>*

\$ . 1, 1

\$ ( )

 , and 6, 6

actuator, and 5, 6, 4, *i ii s ss* . 3

ˆ \$ *<sup>i</sup>*

ˆ

5,

*s b s* 

*i i*

5,

3,

*s b s* 

*i i*

3,

1,

\$ *<sup>i</sup> r i*

ˆ

Jacobian matrices relate *q*

 and *x* 

can be simply related as;

1,

 and 2, 2

each leg are replaced by intersection of three unit screws, 4

6,

<sup>0</sup> <sup>ˆ</sup> \$

3,

*<sup>i</sup> s* 

*i i*

*s b s* 

the moving platform by means of the joint screws:

ˆ

\$ ( )

, where 4, 1, *i i s s* , 6,*<sup>i</sup> <sup>s</sup>*

*i ii i*

*s bd s* 

$$
\left[\frac{\vec{d}\_i^{\,T}}{d\_i} \quad \frac{(\vec{b}\_i \times \vec{d}\_i)^T}{d\_i}\right] \dot{\vec{\mathbf{x}}}\_P = \dot{d}\_i \quad i = \mathbf{1}, 2, 3, 4 \,\,. \tag{20}
$$

Similarly, if one takes the orthogonal product of both sides of (19) with reciprocal screw

6, cos ˆ \$ cos *i i i i r i i i i i i s d d s d <sup>b</sup> d* the resultant is as follows; ( )( ) cos cos cos *i i T T i i i P i i i ii ii sd sd b xd d d* . (21)

Note that in (21), cos *ii i i sd d* .

Finally, using (20) and (21), jacobian matrices Re . *<sup>d</sup> xJ* and Re . *<sup>d</sup> qJ* are expressed as;

$$\begin{aligned} \boldsymbol{J}\_{\boldsymbol{x}}^{\text{Red},\boldsymbol{\upbeta}} &= \begin{bmatrix} (\overline{\boldsymbol{s}}\_{1} \times \overline{\boldsymbol{d}\_{1}})^{\text{T}} & (\overline{\boldsymbol{b}}\_{1} \times (\overline{\boldsymbol{s}}\_{1} \times \overline{\boldsymbol{d}\_{1}}))^{\text{T}} \\ (\overline{\boldsymbol{s}}\_{2} \times \overline{\boldsymbol{d}\_{2}})^{\text{T}} & (\overline{\boldsymbol{b}}\_{2} \times (\overline{\boldsymbol{s}}\_{2} \times \overline{\boldsymbol{d}\_{2}}))^{\text{T}} \\ (\overline{\boldsymbol{s}}\_{3} \times \overline{\boldsymbol{d}\_{3}})^{\text{T}} & (\overline{\boldsymbol{b}}\_{3} \times (\overline{\boldsymbol{s}}\_{3} \times \overline{\boldsymbol{d}\_{3}}))^{\text{T}} \\ \end{bmatrix} \\ \boldsymbol{J}\_{\boldsymbol{x}}^{\text{Red},\boldsymbol{\uprho}} &= \begin{bmatrix} \overline{\boldsymbol{d}\_{1}} \times \overline{\boldsymbol{d}\_{1}} \end{bmatrix}^{\text{T}} & (\overline{\boldsymbol{b}}\_{1} \times (\overline{\boldsymbol{d}\_{1}} \times \overline{\boldsymbol{d}\_{4}}))^{\text{T}} \\ \overline{\boldsymbol{d}\_{1}}^{\text{T}} & (\overline{\boldsymbol{b}}\_{1} \times \overline{\boldsymbol{d}\_{1}})^{\text{T}} \\ \overline{\boldsymbol{d}\_{2}}^{\text{T}} & (\overline{\boldsymbol{b}}\_{2} \times \overline{\boldsymbol{d}\_{2}})^{\text{T}} \\ \overline{\boldsymbol{d}\_{3}}^{\text{T}} & (\overline{\boldsymbol{b}}\_{3} \times \overline{\boldsymbol{d}\_{3}})^{\text{T}} \\ \end{bmatrix} \tag{22}$$

Exploiting Higher Kinematic Performance –

vector:

Pascal, 1999).

**5. Performance indices** 

Using a 4-Legged Redundant PM Rather than Gough-Stewart Platforms 53

<sup>123456</sup> ( , , , , , ). *Stewart*

<sup>123456</sup> [ ] *Stewart <sup>T</sup> q dddddd*

Based on the existence of the two jacobian matrices above, the mechanism is at a singular configuration when either the determinant of *xJ* or *qJ* is either zero or infinity (Beji &

As it is clear from (25) and (27), the determinant of *qJ* in the workspace of this mechanism

If (30) holds, the moving platform gains 1 or more degrees of freedom. In other words, at a forward kinematic singular configuration, the manipulator cannot resist forces or moments in some directions. As it can be seen, the redundancy can help us to avoid this kind of

With the increasing demand for precise manipulators, search for a new manipulator with better performance has been intensive. Several indices have been proposed to evaluate the performance of a manipulator. Merlet reviewed the merits and weaknesses of these indices (Merlet, 2006). The dexterity indices have been commonly used in determining the dexterous regions of a manipulator workspace. The condition number of the jacobian matrix is known to be used as a measuring criterion of kinematic accuracy of manipulators. Salisbury & Craig (1982) used this criterion for the determination of the optimal dimensions for the fingers of an articulated hand. The condition number of the jacobian matrix has also

The most performance indices are pose-dependant. For design, optimization and comparison purpose, Gosselin & Angeles (1991) proposed a global performance index,

The performance indices are usually formed based on the evaluation of the determinant, norms, singular values and eigenvalues of the jacobian matrix. These indices have physical interpretation and useful application for control and optimization just when the elements of the jacobian matrix have the same units (Kucuk & Bingul, 2006). Otherwise, the stability of control systems, which are formed based on these jacobian matrices, will depend on the physical units of parameters chosen (Schwartz et al., 2002). Thus, different indices for

Inverse kinematic singularity occurs when the determinant of *qJ* vanishes, namely;

Forward kinematic singularity occurs when the rank of *xJ* is less than 6, namely;

Note that the joint velocity vector in stewart mechanism, *Stewart q*

cannot be vanished. Therefore we do not have this type of singularity.

singularity, which is common in nearly all parallel mechanisms.

been applied for designing a spatial manipulator (Angeles & Rojas, 1987).

which is the integration of the local index over the workspace.

rotations and translations should be defined (Cardou et al., 2010).

*qJ dia g dddddd* (27)

. (28)

det( ) 0 *qJ* . (29)

()5 *<sup>x</sup> rank J* . (30)

, is the following 6 1

and

$$\mathrm{d}f\_q^{\mathrm{Red}, \mathrm{d}} = \mathrm{diag}(d\_1^2 \cos^2 \varphi\_1, d\_2^2 \cos^2 \varphi\_2, d\_3^2 \cos^2 \varphi\_3, d\_4^2 \cos^2 \varphi\_4, d\_1, d\_2, d\_3, d\_4). \tag{23}$$

Similarly, jacobian matrices of non-redundant mechanism ( *Non d* Re . *xJ* and *Non d* Re . *qJ* ) can be expressed as;

$$\begin{aligned} \boldsymbol{J}\_{\boldsymbol{x}}^{\text{Non-Re}\boldsymbol{d},} &= \begin{bmatrix} \left(\overline{\boldsymbol{s}}\_{1} \times \overline{\boldsymbol{d}\_{1}}\right)^{\text{T}} & \left(\overline{\boldsymbol{b}}\_{1} \times \left(\overline{\boldsymbol{s}}\_{1} \times \overline{\boldsymbol{d}\_{1}}\right)\right)^{\text{T}}\\ \left(\overline{\boldsymbol{s}}\_{2} \times \overline{\boldsymbol{d}\_{2}}\right)^{\text{T}} & \left(\overline{\boldsymbol{b}}\_{2} \times \left(\overline{\boldsymbol{s}}\_{2} \times \overline{\boldsymbol{d}\_{2}}\right)\right)^{\text{T}}\\ \left(\overline{\boldsymbol{s}}\_{3} \times \overline{\boldsymbol{d}\_{3}}\right)^{\text{T}} & \left(\overline{\boldsymbol{b}}\_{3} \times \left(\overline{\boldsymbol{s}}\_{3} \times \overline{\boldsymbol{d}\_{3}}\right)\right)^{\text{T}}\\ \overline{\boldsymbol{d}\_{1}}^{\text{T}} & \left(\overline{\boldsymbol{b}}\_{1} \times \overline{\boldsymbol{d}\_{1}}\right)^{\text{T}}\\ \overline{\boldsymbol{d}\_{2}}^{\text{T}} & \left(\overline{\boldsymbol{b}}\_{2} \times \overline{\boldsymbol{d}\_{2}}\right)^{\text{T}}\\ \overline{\boldsymbol{d}\_{3}}^{\text{T}} & \left(\overline{\boldsymbol{b}}\_{3} \times \overline{\boldsymbol{d}\_{3}}\right)^{\text{T}} \end{bmatrix} \end{aligned} \tag{24}$$

and

$$J\_q^{\text{Norm-Red.}} = \text{diag}(d\_1^2 \cos^2 \psi\_1, d\_2^2 \cos^2 \psi\_2, d\_3^2 \cos^2 \psi\_3, d\_1, d\_2, d\_3). \tag{25}$$

And for the Stewart platform one can have

$$\boldsymbol{J}\_{\boldsymbol{X}}^{\text{Stenart}} = \begin{bmatrix} \overline{d\_{1}}^{\text{T}} & (\overline{b\_{1}} \times \overline{d\_{1}})^{\text{T}} \\ \overline{d\_{2}}^{\text{T}} & (\overline{b\_{2}} \times \overline{d\_{2}})^{\text{T}} \\ \overline{d\_{3}}^{\text{T}} & (\overline{b\_{3}} \times \overline{d\_{3}})^{\text{T}} \\ \overline{d\_{4}}^{\text{T}} & (\overline{b\_{4}} \times \overline{d\_{4}})^{\text{T}} \\ \overline{d\_{5}}^{\text{T}} & (\overline{b\_{5}} \times \overline{d\_{5}})^{\text{T}} \\ \overline{d\_{6}}^{\text{T}} & (\overline{b\_{6}} \times \overline{d\_{6}})^{\text{T}} \end{bmatrix}' \tag{26}$$

and

$$J\_q^{Serant} = \text{diag}\{d\_1, d\_2, d\_3, d\_4, d\_5, d\_6\}. \tag{27}$$

Note that the joint velocity vector in stewart mechanism, *Stewart q* , is the following 6 1 vector:

$$
\dot{\bar{q}}^{Stemart} = \begin{bmatrix} \dot{d}\_1 & \dot{d}\_2 & \dot{d}\_3 & \dot{d}\_4 & \dot{d}\_5 & \dot{d}\_6 \end{bmatrix}^T. \tag{28}
$$

Based on the existence of the two jacobian matrices above, the mechanism is at a singular configuration when either the determinant of *xJ* or *qJ* is either zero or infinity (Beji &

Pascal, 1999).

52 Serial and Parallel Robot Manipulators – Kinematics, Dynamics, Control and Optimization

44 4 44 Re .

*<sup>d</sup> <sup>x</sup> <sup>T</sup> <sup>T</sup>*

*<sup>J</sup> d bd*

Re . 2 2 2 2 2 2 2 2

*Non d*

And for the Stewart platform one can have

Similarly, jacobian matrices of non-redundant mechanism ( *Non d* Re . *xJ* and *Non d* Re .

and

and

and

expressed as;

11 1 11 22 2 22 33 3 33

( ) ( ( )) ( ) ( ( )) ( ) ( ( )) ( ) ( ( ))

 

*sd b sd sd b sd sd b sd sd b sd*

 

*T T T T T T T T*

1 11 2 22 3 33 4 44

*d bd d bd d bd*

1 12 23 34 41234 ( cos , cos , cos , cos , , , , ). *<sup>d</sup> qJ diag d d d d d d d d* 

> 11 1 11 22 2 22

( ) ( ( )) ( ) ( ( )) ( ) ( ( ))

 

*sd b sd sd b sd sd b sd*

> 1 11 2 22 3 33

*d bd d bd*

*T T T T*

*d bd d bd d bd*

 

*d bd d bd d bd*

( ) ( ) ( ) ( ) ( ) ( )

*T T T T T T*

*T T T T*

( ) ( ) ( )

(25)

*T T T T T T*

33 3 33 Re .

*x T T*

*<sup>J</sup> d bd*

Re . 2 2 2 2 2 2

*Stewart*

*J*

1 12 23 3123 ( cos , cos , cos , , , ). *Non d qJ diag d d d ddd*

*<sup>x</sup> <sup>T</sup> <sup>T</sup>*

*T T T T T T*

( ) ( ) ( ) ( ) , (22)

(23)

*qJ* ) can be

, (24)

, (26)

 

Inverse kinematic singularity occurs when the determinant of *qJ* vanishes, namely;

$$\det(f\_q) = 0 \,. \tag{29}$$

As it is clear from (25) and (27), the determinant of *qJ* in the workspace of this mechanism cannot be vanished. Therefore we do not have this type of singularity.

Forward kinematic singularity occurs when the rank of *xJ* is less than 6, namely;

$$\text{rank}(f\_x) \le 5 \,\, . \tag{30}$$

If (30) holds, the moving platform gains 1 or more degrees of freedom. In other words, at a forward kinematic singular configuration, the manipulator cannot resist forces or moments in some directions. As it can be seen, the redundancy can help us to avoid this kind of singularity, which is common in nearly all parallel mechanisms.
