The schematic of a general passive overconstrained PM with *n* DOFs is shown in Fig. 1. Assume that the *t* supporting limbs supply *m* constraint forces/moments to the moving platform in total. For a passive overconstrained PM, there exists *m* > 6–*n*. Let *A*
_{
υ
}, *B*
_{
υ
}, *C*
_{
υ
}, …, denote the joints of the *υ*th (*υ* = 1, 2, …, *t*) supporting limb from the moving platform to the base in sequence. Assume that the friction in the kinematic joints is ignored, and the stiffness of the moving platform is much greater than that of the supporting limbs.

Owing to the existence of redundant constraints, the force and moment equilibrium equations of a passive overconstrained PM are insufficient to determine all the driving forces/torques and constraint forces/moments. Hence, a certain number of supplementary equations are required. The typical methods for force analysis of passive overconstrained PMs can be divided into six categories.

### 2.1 Traditional Method

*Main ideas*: The force and moment equilibrium equations of all movable bodies are established based on the Newton–Euler formulation in sequence. Then, a certain number of compatibility equations of deformation are supplemented to obtain a set of complete and solvable equations. Thus, the driving forces/torques and constraint forces/moments can be solved by combining the force and moment equilibrium equations and the compatibility equations of deformation [10], which is explained briefly in the following paragraphs.

Based on the Newton–Euler formulation the force and moment equilibrium equations of the moving platform of a passive overconstrained PM can be established as

$$\it \it \it \it \it \left\{ \begin{array}{l} {\varvec{F}} + \sum\limits_{{\upsilon = 1}}^{t} {{}_{{o\upsilon }}^{O} {\varvec{Rf}}_{\upsilon } } + m_{O} {}_{g}^{O} {\varvec{Rg}} = {\varvec{h}}_{O} , \hfill \\ {\varvec{M}} + \sum\limits_{{\upsilon = 1}}^{t} {\left( {{}_{{o\upsilon }}^{O} {\varvec{Rt}}_{\upsilon } + {\varvec{r}}_{{O\upsilon }} \times {}_{{o\upsilon }}^{O} {\varvec{Rf}}_{\upsilon } } \right)} = {\varvec{n}}_{O} , \hfill \\ \end{array} \right.$$

(1)

where *F* and *M* denote the three-dimensional external force and moment vectors exerted on the moving platform expressed in the coordinate system {*O*} attached at the moving platform, respectively, *f*
_{
υ
} (*υ* = 1, 2, …, *t*) and *t*
_{
υ
} represent the three-dimensional reaction force and moment vectors of joint *A*
_{
υ
} connecting the moving platform and the *υ*th limb, respectively, which are expressed in the local coordinate system {*o*
_{
υ
}} of the *υ*-th limb, \({}_{o\upsilon }^{O} {\varvec{R}}\) is the rotational transformation matrix of {*o*
_{
υ
}} with respect to {*O*}, *g* is the gravity vector expressed in the global coordinate system, \({}_{g}^{O} {\varvec{R}}\) is the rotational transformation matrix of the global system with respect to {*O*}, *m*
_{
O
} is the mass of the moving platform, *r*
_{
Oυ
} is the position vector from origin *O* to the center of joint *A*
_{
υ
} expressed in {*O*}, and *h*
_{
O
} and *n*
_{
O
} denote the inertia force and moment vectors of the moving platform expressed in {*O*}, respectively.

The force and moment equilibrium equations of the link *A*
_{
υ
}
*B*
_{
υ
} close to the moving platform in the *υ*th limb can be built as

$$\left\{ \begin{array}{l} {\varvec{f}}_{B\upsilon } - {\varvec{f}}_{\upsilon } + m_{\upsilon 1} {}_{g}^{o\upsilon } {\varvec{Rg}} = {\varvec{h}}_{\upsilon 1} , \hfill \\ {\varvec{t}}_{B\upsilon } - {\varvec{t}}_{\upsilon } + {\varvec{r}}_{oB} \times {\varvec{f}}_{B\upsilon } - {\varvec{r}}_{oA} \times {\varvec{f}}_{\upsilon } = {\varvec{n}}_{\upsilon 1} , \hfill \\ \end{array} \right.$$

(2)

where *f*
_{
Bυ
} and *t*
_{
Bυ
} represent the three-dimensional reaction force and moment vectors of joint *B*
_{
υ
}, respectively, \({}_{g}^{o\upsilon } {\varvec{R}}\) is the rotational transformation matrix of the global system with respect to {*o*
_{
υ
}}, *m*
_{
υ1} is the mass of the link *A*
_{
υ
}
*B*
_{
υ
}, *r*
_{
oA
} and *r*
_{
oB
} are the position vectors from the origin *o*
_{
υ
} to the centers of the joints *A*
_{
υ
} and *B*
_{
υ
}, respectively, and *h*
_{
υ1} and *n*
_{
υ1} denote the inertia force and moment vectors of the link *A*
_{
υ
}
*B*
_{
υ
}, respectively. *f*
_{
Bυ
}, *t*
_{
Bυ
}, *r*
_{
oA
}, *r*
_{
oB
}, *h*
_{
υ1} and *n*
_{
υ1} are expressed in the local coordinate system {*o*
_{
υ
}}.

Similarly, the force and moment equilibrium equations of other links of the *t* limbs can be formulated. It should be noted that, for different types of joints, the number of unknown reactions is different, for example, one of the three reaction moments of a rotational joint (R) is zero, while for a translational joint (P), one of the three reaction forces is zero.

Assuming that the moving platform is rigid, the deformations of supporting limbs have to be compatible with each other to satisfy the geometric constraints. Hence, the compatibility equations of the deformations generated in the axes of redundant constraint forces and moments can be expressed as [10]

$$\left\{ \begin{array}{l} \delta_{u,\upsilon } = \delta_{u,\upsilon + 1} , \hfill \\ \psi_{v,\upsilon } = \psi_{v,\upsilon + 1} , \hfill \\ \end{array} \right.$$

(3)

where *δ*
_{
u,υ
} and *δ*
_{
u,υ+1} denote the linear deformations generated at the ends of the *υ*th and the (*υ* + 1)th limbs in the axis of the *u*th redundant constraint force, respectively, and *ψ*
_{
v,υ
} and *ψ*
_{
v,υ+1} represent the angular deformations generated at the ends of the *υ*th and (*υ* + 1)th limbs in the axis of the *v*th redundant constraint moment, respectively.

Then all driving forces/torques and constraint forces/moments can be solved by combining Eqs. (1), (2), and (3).

*Discussion*: This is a traditional method applicable to the statically indeterminate problem of general passive overconstrained PMs. However, it is computationally intensive because of the high-rank coefficient matrix of the simultaneous equations. Furthermore, it is difficult to obtain the explicit expressions of the solutions by this method.

### 2.2 Method Based on the Judgment of Constraint Jacobian Matrix

*Main ideas*: The judgments of the independent and dependent rows of the constraint Jacobian matrix are used to find which joint reactions of a mechanism with redundant constraints can be uniquely determined [17, 49,50,51,52].

Generally, a kinematic joint imposes a certain number of constraints on the relative motion between the two bodies it connects. If a mechanism is described by *N* coordinates, the constraint conditions imposed by the *b*th kinematic joint can be expressed as

$${\varvec{\Phi}}^{b} \left( {\varvec{q}} \right) = {\varvec{\Phi}}^{b} \left( {q_{1} ,q_{2} , \cdots ,q_{N} } \right) = \varvec{0},$$

(4)

where *q*
_{1}, *q*
_{2}, …, *q*
_{
N
} denote the *N* coordinates.

Then the equations describing the *μ* constraints imposed by all the joints of the mechanism can be arranged as

$${\varvec{\Phi}}\left( {\varvec{q}} \right) = \left( {\begin{array}{*{20}c} {\varPhi_{1} \left( {\varvec{q}} \right)} \\ {\varPhi_{2} \left( {\varvec{q}} \right)} \\ \vdots \\ {\varPhi_{\mu } \left( {\varvec{q}} \right)} \\ \end{array} } \right) = \left( {\begin{array}{*{20}c} {\varPhi_{1} \left( {q_{1} ,q_{2} , \cdots ,q_{N} } \right)} \\ {\varPhi_{2} \left( {q_{1} ,q_{2} , \cdots ,q_{N} } \right)} \\ \vdots \\ {\varPhi_{\mu } \left( {q_{1} ,q_{2} , \cdots ,q_{N} } \right)} \\ \end{array} } \right) = \varvec{0}_{\mu \times 1}.$$

(5)

The constraint Jacobian matrix of the constraint equations can be obtained on the basis of Eq. (5):

$${\varvec{\Phi}}_{{\varvec{q}}} \left( {\varvec{q}} \right) = \left( {\begin{array}{*{20}c} {\frac{{\partial \varPhi_{1} }}{{\partial q_{1} }}} & {\frac{{\partial \varPhi_{1} }}{{\partial q_{2} }}} & \cdots & {\frac{{\partial \varPhi_{1} }}{{\partial q_{N} }}} \\ {\frac{{\partial \varPhi_{2} }}{{\partial q_{1} }}} & {\frac{{\partial \varPhi_{2} }}{{\partial q_{2} }}} & \cdots & {\frac{{\partial \varPhi_{2} }}{{\partial q_{N} }}} \\ \vdots & \vdots & {} & \vdots \\ {\frac{{\partial \varPhi_{\mu } }}{{\partial q_{1} }}} & {\frac{{\partial \varPhi_{\mu } }}{{\partial q_{2} }}} & \cdots & {\frac{{\partial \varPhi_{\mu } }}{{\partial q_{N} }}} \\ \end{array} } \right) = \left( {\begin{array}{*{20}c} {\left( {{\varvec{\Phi}}_{1} } \right)_{{\varvec{q}}} } \\ {\left( {{\varvec{\Phi}}_{2} } \right)_{{\varvec{q}}} } \\ \vdots \\ {\left( {{\varvec{\Phi}}_{\mu } } \right)_{{\varvec{q}}} } \\ \end{array} } \right).$$

(6)

For a mechanism with redundant constraints, the rank of matrix \({\varvec{\Phi}}_{{\varvec{q}}} \left( {\varvec{q}} \right)\) must be less than *μ*. That is to say, one or more rows of \({\varvec{\Phi}}_{{\varvec{q}}} \left( {\varvec{q}} \right)\) can be expressed as a linear combination of other rows. The independent rows of \({\varvec{\Phi}}_{q} \left( {\varvec{q}} \right)\) can be identified by a variety of mathematical methods [17, 49,50,51,52], such as the concept of direct sum, the singular value decomposition, the QR decomposition. For an overconstrained rigid body mechanism, the reaction forces/moments corresponding to the independent constraint equations are unique, despite that all joint reactions cannot be uniquely determined. In order to obtain the unique solutions to all joint reactions, it is necessary to consider the flexibility of passive overconstrained mechanisms. Wojtyra et al. [52], discussed which parts should be modeled as flexible bodies to guarantee unique joint reactions in overconstrained mechanisms.

*Discussion*: Based on the constraint Jacobian matrix of a passive overconstrained mechanism, several methods were proposed to isolate the joint reactions that can be uniquely determined. Those methods were proposed from a purely mathematical perspective, i.e., the corresponding physical interpretation was not considered. Besides, the analytical expressions of joint reactions cannot be obtained by this kind of method.

### 2.3 Method under the Condition of Decoupled Deformations

*Main ideas*: Assuming that the *υ*th (*υ* = 1, 2, …, *t*) supporting limb of a passive overconstrained PM contains *N*
_{
υ
} driving forces/torques and constraint forces/moments in total, as shown in Fig. 1, the elastic deformations generated at the end of the *υ*th limb by the *N*
_{
υ
} driving forces/torques and constraint forces/moments are considered to be decoupled to each other [53,54,55,56]. In this case, the stiffness of each supporting limb can be expressed as a scalar quantity or a diagonal matrix. The steps of this method can be summarized as follows:

The force and moment equilibrium equations of the moving platform of a passive overconstrained PM can be formulated as

$$\left( {\not\!{\varvec{S}}_{F} } \right)_{6 \times 1} = \varvec{G}_{{6 \times \left( {n + m} \right)}} \varvec{f}_{{\left( {n + m} \right) \times 1}},$$

(7)

where \({\not\!{\varvec{S}}}_{F}\) denotes the six-dimensional external load imposed on the moving platform, *G* is the coefficient matrix mapping the driving forces/torques and constraint forces/moments to the external loads, and *f* is the vector composed of the magnitudes of the *n* driving forces/torques and *m* constraint forces/moments.

Let *k*
_{
j
} be the stiffness between the *j*th driving force/torque or constraint force/moment and the elastic deformation generated at the end of the corresponding limb under the action of the *j*th driving force/torque or constraint force/moment. There exists

$$f_{j} = k_{j} \delta_{j} ,j = 1,2, \cdots ,n + m,$$

(8)

where *f*
_{
j
} denotes the magnitude of the *j*th driving force/torque or constraint force/moment, and *δ*
_{
j
} represents the elastic deformation generated at the end of the corresponding limb by *f*
_{
j
}.

Rearranging Eq. (8) in the form of matrix yields

$${\varvec{f}}_{{\left( {n + m} \right) \times 1}} = {\varvec{K}}_{{\left( {n + m} \right) \times \left( {n + m} \right)}} {\varvec{\updelta}}_{{\left( {n + m} \right) \times 1}},$$

(9)

where

$$\begin{aligned} {\varvec{f}}_{{\left( {n + m} \right) \times 1}} = \left( {\begin{array}{*{20}c} {f_{1} } & {f_{2} } & \cdots & {f_{n + m} } \\ \end{array} } \right)^{\text{T}} , \hfill \\ {\varvec{K}}_{{\left( {n + m} \right) \times \left( {n + m} \right)}} = {\text{diag}}\left( {\begin{array}{*{20}c} {k_{1} } & {k_{2} } & \cdots & {k_{n + m} } \\ \end{array} } \right), \hfill \\ {\varvec{\updelta}}_{{\left( {n + m} \right) \times 1}} = \left( {\begin{array}{*{20}c} {\delta_{1} } & {\delta_{2} } & \cdots & {\delta_{n + m} } \\ \end{array} } \right)^{\text{T}} . \hfill \\ \end{aligned}$$

The relationship between the elastic deformations generated at the end of supporting limbs and the six-dimensional micro-displacement *X* of the moving platform as the result of external loads can be derived as

$$\delta_{j} = {\varvec{G}}_{:,j}^{\text{T}} {\varvec{X}}.$$

(10)

Rearranging Eq. (10) in the form of matrix leads to

$${\varvec{\updelta}} = {\varvec{G}}^{\text{T}} {\varvec{X}}.$$

(11)

From Eqs. (7) to (11) we can get

$${\varvec{f}} = {\varvec{KG}}^{\text{T}} \left( {{\varvec{GKG}}^{\text{T}} } \right)^{ - 1} {\not\!{\varvec{S}}}_{{\varvec{F}}},$$

(12)

from which the *n* driving forces/torques and *m* constraint forces/moments can be obtained.

It should be noted that the driving force/torque or constraint force/moment along an arbitrary direction can be decomposed along or perpendicular to the axis of the corresponding limb.

*Discussion*: This method gives the analytical expression of the solutions of the driving forces/torques and the constraint forces/moments of passive overconstrained PMs. However, the coupled deformations generated at the ends of the supporting limbs by the driving forces/torques and constraint forces/moments are ignored.

### 2.4 Method Based on Resultant Constraint Wrenches

*Main ideas*: The resultant forces/moments of the collinear constraint forces or coaxial constraint moments are dealt with first. Then, the constraint forces/moments can be obtained by distributing the resultant forces/moments according to the stiffness proportion of the supporting limbs with collinear constraint forces or coaxial constraint moments [57].

Assume that a passive overconstrained PM has *p* collinear constraint forces and *q* coaxial constraint moments, and the remaining (*m*–*p*–*q*) constraints are independent. Based on the screw theory, the force and moment equilibrium equations between the actuation wrenches, the resultant constraint wrench of the *p* collinear constraint forces and that of the *q* coaxial constraint moments, and the remaining constraint wrenches can be built as

$$\sum\limits_{{i = 1}}^{n} {w_{i} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{a,}}i}} } + \sum\limits_{{k = 1}}^{{m - p - q}} {f_{k} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{r,}}k}} } + f_{p} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{r,}}F}} + f_{q} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{r,}}M}} = \left( {{\varvec{G}}_{b} } \right)_{{6 \times 6}} \left( {{\varvec{f}}_{b} } \right)_{{6 \times 1}} = \left( {{\not\!{\varvec{S}}}_{F} } \right)_{{6 \times 1}},$$

(13)

where

$$\begin{aligned} & {\varvec{f}}_{b} = \left( {\begin{array}{*{20}c} {w_{1} } & \cdots & {w_{n} } & {f_{1} } & \cdots & {f_{m - p - q} } & {f_{p} } & {f_{q} } \\ \end{array} } \right)^{\text{T}} , \\ & {\varvec{G}}_{b} = \left( {\begin{array}{*{20}c} {{\not\!{\hat{\varvec{S}}}}_{\text{a,1}} } & \cdots & {{\not\!{{\hat{\varvec{S}}}}}_{{{\text{a,}}n}} } & {{\not\!{{\hat{\varvec{S}}}}}_{{{\text{r,}}1}} } & \cdots & {{\not\!{{\hat{\varvec{S}}}}}_{{{\text{r,}}\left( {m - p - q} \right)}} } & {{\not\!{{\hat{\varvec{S}}}}}_{{{\text{r,}}F}} } & {{\not\!{{\hat{\varvec{S}}}}}_{{{\text{r,}}M}} } \\ \end{array} } \right), \\ & {\not\!{{\hat{\varvec{S}}}}}_{{{\text{a,}}i}} \left( {i = 1,{ 2}, \, \ldots ,n} \right),{\not\!{{\hat{\varvec{S}}}}}_{{{\text{r,}}k}} \left( {k = 1,{ 2}, \, \ldots ,m{-}p{-}q} \right). \\ \end{aligned}$$

\({\not\!{\hat{{\varvec{S}}}}}_{{{\text{r,}}F}}\) and \({\not\!{\hat{{\varvec{S}}}}}_{{{\text{r,}}M}}\) denote the unit screws of the *i*th actuation wrench, the *k*th independent constraint wrench, the resultant constraint wrench and the resultant constraint couple, respectively, *w*
_{
i
}, *f*
_{
k
}, *f*
_{
p
} and *f*
_{
q
} represent the magnitudes of the *i*th actuation wrench, the *k*th independent constraint wrench, the resultant constraint wrench and the resultant constraint couple, respectively. All screws are expressed in the global system.

If *G*
_{
b
} is non-singular, the magnitudes of the actuation wrenches, the independent constraint wrenches, the resultant constraint wrench, and the resultant constraint couple can be solved from Eq. (13) as

$${\varvec{f}}_{b} = {\varvec{G}}_{b}^{ - 1} {\not\!{\varvec{S}}}_{F}.$$

(14)

According to the hypothesis given in Ref. [57], we assume that the stiffness proportion of the (*γ* + 1)th and the *γ*th supporting limbs with collinear constraint forces is *η*
_{
γ
}, and that of the (*λ* + 1)th and the *λ*th supporting limbs with coaxial constraint moments is *η*
_{
λ
}. In view that the constraint forces and moments are in direct proportion to the stiffness of the corresponding limbs, the complementary equations can be given as

$$\left\{ \begin{aligned} f_{p,\gamma + 1} = \eta_{\gamma } f_{p,\gamma } \left( {\gamma = 1,2, \cdots ,p - 1} \right), \hfill \\ f_{q,\lambda + 1} = \eta_{\lambda } f_{q,\lambda } \left( {\lambda = 1,2, \cdots ,q - 1} \right), \hfill \\ \end{aligned} \right.$$

(15)

where *f*
_{
p,γ
} and *f*
_{
q,λ
} are the magnitudes of the *γ*th collinear constraint force and the *λ*th collinear constraint moment, respectively.

The magnitudes of the resultant constraint forces and moments have been solved from Eq. (14) as

$$\left\{ \begin{aligned} f_{p} = \left( {{\varvec{G}}_{b} } \right)_{5,:}^{ - 1} {\not\!{\varvec{S}}}_{F} = \sum\limits_{\gamma = 1}^{p} {f_{p,\gamma } } , \hfill \\ f_{q} = \left( {{\varvec{G}}_{b} } \right)_{6,:}^{ - 1} {\not\!{\varvec{S}}}_{F} = \sum\limits_{\lambda = 1}^{q} {f_{q,\lambda } } . \hfill \\ \end{aligned} \right.$$

(16)

Combining Eqs. (15) and (16), the magnitudes of each collinear constraint force and coaxial constraint moment can be solved. Thus, the reactions of the joints connecting the moving platform and supporting limbs can be easily determined based on the relationship between them and the actuation and constraint wrenches. The reactions of other joints can be solved by establishing the force and moment equilibrium equations of the corresponding link one by one.

*Discussion*: In general, a kinematic joint possesses more than one constraint reaction, for example, there exist 5, 4, 4 and 3 constraint reactions for an R joint, universal joint (U), cylindrical joint (C), and spherical joint (S), respectively. If we adopt traditional methods to build the force and moment equilibrium equations of all movable bodies and complementary equations, the rank of the coefficient matrix of those equations will be very large. This method, which is based on resultant constraint wrenches, can avoid the high-rank matrix, reduce a certain number of unknowns, and ensure that the number of simultaneous equilibrium equations is not more than six each time. However, it is only suitable for solving the driving forces/torques and constraint forces/moments of passive overconstrained PMs with collinear constraint forces or coaxial constraint moments.

### 2.5 Method Based on the Stiffness Matrix of Limb’s Overconstraint or Constraint Wrenches

*Main ideas*: Based on the characteristics of the elastic deformations generated at the ends of supporting limbs, the passive overconstrained PMs are classified into two classes: the limb stiffness decoupled and coupled overconstrained PMs. Stiffness matrices of the limb’s overconstraint and constraint wrenches that correspond to the two types of mechanisms are defined, which help to establish the compatibility equations about the deformations generated at the ends of supporting limbs and the micro-displacements of the moving platform [58]. Then, the driving forces/torques and constraint forces/moments of the two kinds of overconstrained PMs are solved by combining the force and moment equilibrium equations and the compatibility equations of deformation.

A brief review of the methods for force analysis of the limb stiffness decoupled and coupled overconstrained PMs follows.

For a limb stiffness decoupled overconstrained PM, the force and moment equilibrium equations of the moving platform can be expressed as

$${\not\!{\varvec{S}}}_{{\varvec{F}}} = w_{{{\text{a}},1}} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{a}},1}} + \cdots w_{{{\text{a}},n}} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{a}},n}} + f_{\text{r,1}} {\not\!{\hat{{\varvec{S}}}}}_{\text{r,1}} + \cdots f_{{{\text{r,}}l}} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{r,}}l}} + f_{{{\text{r}},1}}^{\text{e}} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{r}},1}}^{\text{e}} + \cdots + f_{{{\text{r}},d}}^{\text{e}} {\not\!{\hat{{\varvec{S}}}}}_{{{\text{r}},d}}^{\text{e}} = {\varvec{G}}_{c} {\varvec{f}}_{c},$$

(17)

where

$$\begin{aligned} {\varvec{G}}_{c} & = \left( {\begin{array}{*{20}c} {{\not\!{\hat{{\varvec{S}}}}}_{{{\text{a}},1}} } & \cdots & {{\not\!{\hat{{\varvec{S}}}}}_{{{\text{a}},n}} } & {{\not\!{\hat{{\varvec{S}}}}}_{\text{r,1}} } & \cdots & {{\not\!{\hat{{\varvec{S}}}}}_{{{\text{r,}}l}} } & {{\not\!{\hat{{\varvec{S}}}}}_{{{\text{r}},1}}^{\text{e}} } & \cdots & {{\not\!{\hat{{\varvec{S}}}}}_{{{\text{r}},d}}^{\text{e}} } \\ \end{array} } \right), \\ {\varvec{f}}_{c} & = \left( {\begin{array}{*{20}c} {{\varvec{w}}_{\text{a}}^{\text{T}} } & {{\varvec{f}}_{\text{r,non}}^{\text{T}} } & {{\varvec{f}}_{\text{e}}^{\text{T}} } \\ \end{array} } \right)^{\text{T}} , \\ {\varvec{w}}_{\text{a}} & = \left( {\begin{array}{*{20}c} {w_{{{\text{a}},1}} } & \cdots & {w_{{{\text{a}},n}} } \\ \end{array} } \right)^{\text{T}} , \\ {\varvec{f}}_{\text{r,non}} & = \left( {\begin{array}{*{20}c} {f_{\text{r,1}} } & \cdots & {f_{{{\text{r,}}l}} } \\ \end{array} } \right)^{\text{T}} , \\ {\varvec{f}}_{\text{e}} & = \left( {\begin{array}{*{20}c} {f_{{{\text{r}},1}}^{\text{e}} } & \cdots & {f_{{{\text{r}},d}}^{\text{e}} } \\ \end{array} } \right)^{\text{T}} , \\ \end{aligned}$$

\({\not\!{\hat{{\varvec{S}}}}}_{{{\text{a}},i}}\)(*i* = 1, 2, …, *n*), \({\not\!{\hat{{\varvec{S}}}}}_{{{\text{r,}}\varepsilon }}\)(*ε* = 1, 2, …, *l*), and \({\not\!{\hat{{\varvec{S}}}}}_{{{\text{r}},\sigma }}^{{\text{e}}}\) (*σ* = 1, 2, …, *d*) represent the unit screws of the *i*th actuation wrench, *ε*th non-overconstraint wrench, and *σ*th equivalent constraint wrench of the (*m*–*l*) overconstraint wrenches, respectively. *w*
_{a,i
}, *f*
_{r,ε
}, and \(f_{{{\text{r,}}\sigma }}^{\text{e}}\) are the magnitudes of the *i*th actuation wrench, *ε*th non-overconstraint wrench, and *σ*th equivalent constraint wrench, respectively. Details about the non-overconstraint wrenches, overconstraint wrenches, and equivalent ones of overconstraint wrenches are given in Ref. [58].

Then the magnitudes of the actuation wrenches, the non-overconstraint wrenches, and the equivalent constraint wrenches can be solved from Eq. (17) as

$${\varvec{f}}_{c} = \left( {\begin{array}{*{20}c} {{\varvec{w}}_{\text{a}}^{\text{T}} } & {{\varvec{f}}_{\text{r,non}}^{\text{T}} } & {{\varvec{f}}_{\text{e}}^{\text{T}} } \\ \end{array} } \right)^{\text{T}} = {\varvec{G}}_{c}^{ - 1} {\not\!{\varvec{S}}}_{{\varvec{F}}}.$$

(18)

Assume that the (*m*–*l*) overconstraint wrenches are distributed in *ς* supporting limbs. The relationship between the magnitudes of the equivalent constraint wrenches and those of the overconstraint wrenches can be expressed as

$${\varvec{f}}_{\text{e}} = \left( {\begin{array}{*{20}c} {f_{{{\text{r}},1}}^{\text{e}} } & \cdots & {f_{{{\text{r}},d}}^{\text{e}} } \\ \end{array} } \right)^{\text{T}} = {\varvec{J}}_{1} {\varvec{f}}_{\text{over}}^{1} + {\varvec{J}}_{2} {\varvec{f}}_{\text{over}}^{2} + \cdots + {\varvec{J}}_{\varsigma } {\varvec{f}}_{\text{over}}^{\varsigma }.$$

(19)

According to the definition of the stiffness matrix of the supporting limb’s overconstraint wrenches [58], we can know that

$${\varvec{f}}_{\text{over}}^{s} = {\varvec{K}}_{s} {\varvec{\updelta}}_{s} ,s = 1,2, \cdots ,\varsigma.$$

(20)

The elastic deformations generated at the end of the *s*th supporting limb in the axes of overconstraint wrenches can be formulated as

$${\varvec{\updelta}}_{s} = {\varvec{J}}_{s}^{\text{T}} {\varvec{X}}_{\text{e}},$$

(21)

where *X*
_{e} is the vector composed of the elastic deformations in the axes of equivalent constraint wrenches.

Then, the magnitudes of the overconstraint wrenches can be solved by combining Eqs. (19), (20) and (21) as

$${\varvec{f}}_{\text{over}}^{s} = {\varvec{K}}_{s} {\varvec{J}}_{s}^{\text{T}} \left( {{\varvec{J}}_{1} {\varvec{K}}_{1} {\varvec{J}}_{1}^{\text{T}} + {\varvec{J}}_{2} {\varvec{K}}_{2} {\varvec{J}}_{2}^{\text{T}} + \cdots + {\varvec{J}}_{\varsigma } {\varvec{K}}_{\varsigma } {\varvec{J}}_{\varsigma }^{\text{T}} } \right)^{ - 1} {\varvec{f}}_{\text{e}}.$$

(22)

So far, Eqs. (18) and (22) give the analytical expressions of the magnitudes of all actuation wrenches, non-overconstraint wrenches, and overconstraint wrenches.

For a limb stiffness coupled overconstrained PM, assuming that the *υ*th supporting limb supplies *N*
_{
υ
} constraint wrenches (including actuation wrenches) to the moving platform, the force and moment equilibrium equations of the moving platform can be expressed as

$${\not\!{\varvec{S}}}_{{\varvec{F}}} = f_{ 1}^{1} {\not\!{\hat{{\varvec{S}}}}}_{1}^{1} + f_{ 2}^{1} {\not\!{\hat{{\varvec{S}}}}}_{2}^{1} + \cdots f_{N 1}^{1} {\not\!{\hat{{\varvec{S}}}}}_{N 1}^{1} + f_{ 1}^{2} {\not\!{\hat{{\varvec{S}}}}}_{ 1}^{2} + f_{ 2}^{2} {\not\!{\hat{{\varvec{S}}}}}_{ 2}^{2} + \cdots f_{N2}^{2} {\not\!{\hat{{\varvec{S}}}}}_{N2}^{2} + \cdots f_{1}^{t} {\not\!{\hat{{\varvec{S}}}}}_{1}^{t} + f_{2}^{t} {\not\!{\hat{{\varvec{S}}}}}_{2}^{t} + \cdots f_{Nt}^{t} {\not\!{\hat{{\varvec{S}}}}}_{Nt}^{t} = {\varvec{G}}_{d} {\varvec{f}}_{d},$$

(23)

where

$$\begin{aligned} \;{\varvec{G}}_{d} & = \left( {\begin{array}{*{20}c} {{\varvec{G}}_{1} } & {{\varvec{G}}_{2} } & \cdots & {{\varvec{G}}_{t} } \\ \end{array} } \right), \\ {\varvec{G}}_{\upsilon } & = \left( {\begin{array}{*{20}c} {{\not\!{\hat{{\varvec{S}}}}}_{ 1}^{\upsilon } } & {{\not\!{\hat{{\varvec{S}}}}}_{2}^{\upsilon } } & \cdots & {{\not\!{\hat{{\varvec{S}}}}}_{N\upsilon }^{\upsilon } } \\ \end{array} } \right),\upsilon = 1,{ 2}, \, \ldots ,t, \\ {\varvec{f}}_{d} & = \left( {\begin{array}{*{20}c} {{\varvec{f}}_{1}^{\text{T}} } & {{\varvec{f}}_{2}^{\text{T}} } & \cdots & {{\varvec{f}}_{t}^{\text{T}} } \\ \end{array} } \right)^{\text{T}} , \\ {\varvec{f}}_{\upsilon } & = \left( {\begin{array}{*{20}c} {f_{1}^{\upsilon } } & {f_{2}^{\upsilon } } & \cdots & {f_{N\upsilon }^{\upsilon } } \\ \end{array} } \right)^{\text{T}} . \\ \end{aligned}$$

According to the definition of the stiffness matrix of the supporting limb’s constraint wrenches [58] there exists

$${\varvec{f}}_{\upsilon } = {\varvec{K}}_{\upsilon } {\varvec{\updelta}}_{\upsilon }.$$

(24)

The compatibility equation about the elastic deformations generated at the end of each limb in the axes of constraint wrenches and the six-dimensional micro-displacement of the moving platform is

$${\varvec{\updelta}}_{\upsilon } = {\varvec{G}}_{\upsilon }^{\text{T}} {\varvec{X}}.$$

(25)

Thus, the magnitudes of all the constraint wrenches (including the actuation wrenches) can be solved by combining Eqs. (23), (24) and (25) as

$${\varvec{f}}_{\upsilon } = {\varvec{K}}_{\upsilon } {\varvec{G}}_{\upsilon }^{\text{T}} \left( {{\varvec{G}}_{1} {\varvec{K}}_{1} {\varvec{G}}_{1}^{\text{T}} + {\varvec{G}}_{2} {\varvec{K}}_{2} {\varvec{G}}_{2}^{\text{T}} + \cdots + {\varvec{G}}_{t} {\varvec{K}}_{t} {\varvec{G}}_{t}^{\text{T}} } \right)^{ - 1} {\not\!{\varvec{S}}}_{F},$$

(26)

which is just the general expression of the magnitudes of all actuation and constraint wrenches.

Then, the actual reactions of all kinematic joints can be easily obtained according to the relationship between them and the magnitudes of the actuation and constraint wrenches shown in Ref. [58].

*Discussion*: It can be seen from Eqs. (18), (22), and (26) that, for the statically indeterminate problem of the limb stiffness decoupled overconstrained PMs, only the elastic deformations generated at the end of supporting limbs in the axes of overconstraint wrenches need to be considered, while for that of the limb stiffness coupled overconstrained PMs, the elastic deformations generated at the end of supporting limbs in the axes of all constraint wrenches, including actuation wrenches, should be taken into account. This method has clear steps, few computational requirements, and gives the explicit analytical expressions of the solutions to the statically indeterminate problem of general passive overconstrained PMs.

### 2.6 Weighted Generalized Inverse Method

*Main ideas*: A simple method is proposed in Ref. [59] by resorting to the definition of the weighted generalized inverse of a non-square matrix [77], which is suitable for solving the statically indeterminate problem of both the limb stiffness decoupled and coupled passive overconstrained PMs.

Based on the weighted generalized inverse of the matrix mapping the driving forces/torques and constraint forces/moments to the external loads, the solutions of the statically indeterminate problem of a general passive overconstrained PM can be derived as [59]

$${\varvec{f}} = {\varvec{G}}_{{\varvec{B}}}^{ + } {\not\!{\varvec{S}}}_{F} = {\varvec{B}}^{ - 1} {\varvec{G}}^{\text{T}} \left( {{\varvec{GB}}^{ - 1} {\varvec{G}}^{\text{T}} } \right)^{ - 1} {\not\!{\varvec{S}}}_{F},$$

(27)

where the weighted matrix *B* is the inverse matrix of a block diagonal matrix composed of the stiffness matrices of each limb’s constraint wrenches.

In the case that each supporting limb only supplies one driving force/torque or constraint force/moment, the stiffness of each limb is just a scalar quantity, and the weighted matrix *B* becomes a diagonal matrix, which is consistent with the work done in Refs. [53, 54].

*Discussion*: The method based on the weighted generalized inverse supplies a simpler and more effective way to solve the statically indeterminate problem of passive overconstrained PMs. Moreover, it can be seen from Eq. (27) that the elements of the weighted matrix *B* are the stiffness matrices of the limbs’ constraint wrenches, which shows that the solutions of the driving forces/torques and constraint forces/moments of passive overconstrained PMs are unique.

In addition to the above mentioned methods, there are other approaches of handling redundant constraints of a passive overconstrained PM, for example, the pseudo-inverse method [60] and the augmented Lagrangian formulation [61, 62]. Furthermore, Zahariev et al. [63], proposed a method for dynamic analysis of multibody systems in overconstrained and singular configurations, in which some closed chains are transformed into open branches and the missing links are substituted by stiff forces.