This paper presents a review of the literature related to the use of redundancy in parallel mechanisms. Two types of redundancies are considered, namely, actuation redundancy and kinematic redundancy. The use of these concepts in the literature is highlighted. Each of the concepts is then formulated mathematically in order to clearly expose their characteristics and their properties. Two subclasses of kinematically redundant parallel mechanisms are defined, namely, those with serial redundant legs and those with parallel redundant legs. The force transmission in redundant parallel mechanisms is then discussed. Finally, a summary of the different approaches that can be used to implement redundancy in parallel mechanisms is given in order to identify the most promising synthesis avenues and to provide insight into their potential fields of application.

# Redundancy in Parallel Mechanisms: A Review OPEN ACCESS

**Clément Gosselin**

**Louis-Thomas Schreiber**

Manuscript received September 15, 2016; final manuscript received August 15, 2017; published online January 31, 2018. Editor: Harry Dankowicz.

*Appl. Mech. Rev*70(1), 010802 (Jan 31, 2018) (15 pages) Paper No: AMR-16-1071; doi: 10.1115/1.4038931 History: Received September 15, 2016; Revised August 15, 2017

Ever since the introduction of the first robotic manipulators, the practical limitations induced by the mapping between the actuated joint velocities and the Cartesian end-effector velocities have been the subject of many investigations (see Refs. [1] and [2] for some of the early work on this topic). In some special so-called singular configurations, this mapping degenerates, preventing the performance of smooth trajectories. Also, for a *n*-degree-of-freedom (dof) manipulator, prescribing the *n* components of the Cartesian position and/or orientation yields a finite number of solutions for the joint coordinates. If none of these solutions satisfies operational constraints such as the presence of joint limits or obstacles in the workspace, the prescribed Cartesian pose cannot be reached. In order to alleviate these drawbacks, the use of redundancy in the design of serial robotic manipulators was proposed [3–5]. A serial manipulator is said to be redundant for a particular task if it possesses more degrees-of-freedom than is required to accomplish the task [6]. Introducing redundancy in a serial manipulator is straightforward: additional actuated joints are added to the serial chain forming the robot. Redundancy in serial manipulators means that for a given pose of the end-effector, there generally exist infinitely many corresponding joint configurations. This feature can be used to select the most appropriate configuration in order to perform a task while satisfying other constraints such as singularity avoidance, obstacle avoidance, or others [3,7–9]. Redundancy resolution schemes based on a dynamic analysis of serial manipulators have also been proposed [10,11].

Introducing redundancy in parallel mechanisms is less straightforward than for serial mechanisms since several options arise. In fact, redundancy in parallel mechanisms can be of three types [12], namely, kinematic redundancy (referred to as mobility redundancy in Ref. [12]), actuation redundancy, and sensing redundancy. Hybrid redundancy, that is, serially combining multiple parallel and/or serial mechanisms (see Refs. [13–17]), is not considered here because the overall mechanisms obtained are not parallel mechanisms, and the resolution of their kinematics is closer to that of serial mechanisms. Also, sensing redundancy is not addressed in this paper because its impact is mainly limited to computational issues such as the solution of the direct kinematic problem whereas the focus is placed here on the static and dynamic characteristics of parallel mechanisms.

One of the main differences between serial and parallel manipulators is that the latter suffer from type-II (or parallel) singularities [18] which can limit their useful workspace. For example, the orientational workspace of the well-known 6dof Gough–Stewart platform [19–22] is generally limited to maximum tilt angles of approximately 45 deg because of the occurrence of type-II singularities. Therefore, one of the objectives of introducing redundancy in parallel mechanisms is to alleviate singular configurations. In principle, each degree of redundancy introduced in a parallel mechanism reduces by one the dimension of the locus of the singular configurations [23–25]. The main issue then becomes the approach to be used in order to introduce redundancy in parallel mechanisms. Two main methods can be used, namely, (i) actuation redundancy and (ii) kinematic redundancy. This is in contrast with serial manipulators, for which only kinematic redundancy is possible. Furthermore, it should be pointed out that in some instances, parallel mechanisms can include both kinematic redundancy and actuation redundancy [26,27]. However, such architectures are rare and quite specific, and they are therefore not discussed in this paper in order to clearly emphasize the fundamental distinctions and implications of the two basic types of redundancy. Also, issues pertaining to fault tolerance and to hyper-redundant mechanisms are not dealt with in this paper: the reader is referred to Ref. [28] for a discussion on these issues and a review of the literature.

Actuation redundancy is generally implemented by introducing additional kinematic chains (legs) between the base and the moving platform of a parallel mechanism (see, for instance, Refs. [29] and [30]) or sometimes by actuating some of the passive joints of an existing architecture of a statically determined parallel mechanism [24]. In Ref. [31], these two approaches are compared, and their effect on the capabilities of a redundantly actuated parallel mechanism is assessed. Interestingly, it is shown that both approaches improve the stiffness capabilities of parallel mechanisms but in different ways. The second approach is in fact rarely reported in the literature^{1} and will not be discussed further. Indeed, the first approach is the most straightforward since it involves adding extra legs that are identical to the existing legs of a given parallel mechanism. It preserves the parallel nature of the mechanism while providing the capability of the mechanism to generate internal antagonistic forces since the number of actuators is larger than the degree-of-freedom of the mechanism.

In order to obtain a reasonable accuracy or stiffness with such mechanisms, it is then often necessary to actively control the internal loads through the use of load cells and/or force control algorithms [32–34], thereby leading to an increased complexity. Several examples of such mechanisms can be found in the literature. In one of the early examples [35], it was proposed to include four actuators and four legs in a 3dof spherical wrist in order to increase the singularity-free workspace. Another spherical architecture was studied in Ref. [36]. In Ref. [37], a similar approach is advocated for spatial parallel mechanisms. A formulation of the dynamics and its impact on the performance are proposed in Ref. [38], while seismic simulation applications are considered in Ref. [39]. Specific issues related to the kinematic calibration of such mechanisms were addressed in Refs. [40–45], and issues related to dynamic calibration were addressed in Refs. [46] and [47]. Also, in order to improve the positioning precision, compliant hinges were included in a 6dof redundantly actuated parallel mechanism in Ref. [48].

Since redundantly actuated parallel mechanisms have the capability to generate internal forces or moments, they generally provide better force capabilities at their end-effector because of the redundancy of the force distribution in their structure (sometimes referred to as static or dynamic redundancy [49]). This property was investigated in Refs. [50–53], where a general framework is proposed for the force analysis, which is also applicable to nonredundant parallel mechanisms. Redundant actuation also reduces the dimension of the locus of so-called force-unconstrained (singular) configurations in the workspace of parallel manipulators [24,54]. Moreover, it was shown in Ref. [55] that redundant actuation can be used to avoid backlash and therefore improve the accuracy of parallel mechanisms. In some applications, this property may lead to significant advantages, such as, for instance, in the use of parallel mechanisms in machine-tools.

The various advantages of redundant actuation in the context of machine-tools are described in Refs. [56] and [57], with a more specific example (sliding star mechanism) provided in Ref. [58]. Experimental demonstrations on a five-axis machine-tool are reported in Refs. [59] and [60]. An application to a 4dof hybrid machine-tool is also described in Ref. [61], while high-speed machining is targeted in Ref. [62] in an effort to combine the agility and force capabilities of a redundantly actuated parallel mechanism. Furthermore, thanks to the additional information provided by the sensors of the redundant actuators, the forward kinematic problem can be solved analytically in some cases, while in other cases, the speed and robustness of the numerical solution are improved.

Applications of redundantly actuated parallel mechanisms in haptic systems were also proposed, such as, for instance, in Ref. [63], where actuation redundancy is exploited in order to render stiff environments. Finally, applications in very high acceleration robots were investigated in Ref. [64], where it is shown that actuation redundancy may help to further improve the acceleration capabilities of parallel mechanisms. An example of application is given in Ref. [65], where a redundantly actuated 3dof planar robot with unlimited rotational capabilities is presented. Similarly, a 4dof manipulator with six actuators is proposed in Ref. [66]. It should be noticed that, as opposed to most designs of redundantly actuated parallel mechanisms, not all legs of this architecture are identical. In the case of mechanisms with additional legs, the increased complexity of the mechanism can be a challenge in the design process because of the higher risk of self-collision between the legs.

Although redundantly actuated parallel mechanisms yield the advantages mentioned earlier—which may provide significant benefits in some applications—they also pose some challenges. Indeed, the distribution of the forces and moments in a redundantly actuated parallel mechanism is not only determined by the external forces and the configuration of the mechanism but it can also be modified by the actuator forces or moments. Therefore, the control of the joint forces or torques becomes a challenging problem.

Another potential benefit of redundant actuation is the control of the stiffness of the mechanism, as demonstrated in Refs. [67] and [68]. This feature is of interest in human–robot interaction applications. In Ref. [69], an algorithm is developed to optimize the force distribution in order to produce a desired stiffness in a given usable workspace. The effect of actuation redundancy on the natural frequency of a parallel mechanism is also studied in Ref. [70] and used as a design criterion in Ref. [71]. Applications in ankle rehabilitation are presented in Refs. [72] and [73].

As mentioned earlier, a different route can be taken in order to include redundancy in parallel mechanisms, namely, by introducing kinematic redundancy. Kinematic redundancy is generally included in parallel mechanisms by adding extra actuated joints—and therefore extra degrees-of-freedom—in one or some of the legs of a parallel mechanism. The number of extra joints being equal to the number of extra actuators, the mechanism remains statically determined, and no internal forces or moments can be generated. However, for a given pose of the platform (a given set of Cartesian coordinates), the mechanism can assume infinitely many different configurations, a feature that may be used to avoid singularities, mechanical interferences, or other undesirable configurations.

Several kinematically redundant parallel mechanisms have been proposed in the literature (see, for instance, Refs. [74–77]). Such mechanisms provide a means of avoiding singular configurations by exploiting the redundant architecture without introducing antagonistic forces. The singularity avoidance capability was first studied in Refs. [74] and [78]. Then, the focus was placed on the enlargement of the workspace (see, for instance, Refs. [79] and [80]), which is an important benefit of using kinematic redundancy. In Refs. [81–84], planar 3dof kinematically redundant parallel mechanisms are analyzed. It is shown that kinematic redundancy can be used to alleviate singularities and enlarge the workspace. Similarly, in Refs. [85] and [86], kinematic redundancy is used to optimize the performances of the manipulator. The dynamic identification of kinematically redundant parallel robots was also addressed in Ref. [46], and kinematic redundancy was used to increase force capabilities for a known trajectory in Ref. [87].

However, it can be observed that all kinematically redundant architectures mentioned earlier involve actuators mounted in series in some or all of the legs of the mechanism. Such an arrangement is detrimental to the properties of the mechanisms because it does not preserve the parallelism of the architecture.

In more recent work, kinematically redundant parallel mechanisms that preserve the parallel nature of the architecture were proposed. This is accomplished by including kinematically redundant legs that are themselves parallel mechanisms. Although the difference between this concept and the kinematically redundant architectures described earlier may seem subtle, it yields very different properties for the mechanisms.

In Ref. [88], a kinematically redundant planar parallel mechanism is proposed in which all actuators are working in parallel. It is shown that this mechanism yields a large singularity-free workspace and that it leads to unlimited rotational capabilities of the end-effector. The proposed architecture uses a parallel redundant leg composed of two actuated sublegs that are joined together at a common link, which is in turn connected to the platform. Therefore, kinematic redundancy is introduced while preserving the parallelism of the actuators. This architecture also inspired the development of a nonredundant scara-type parallel manipulator with infinite tool rotation [89]. Also, in Ref. [90], a similar architecture is proposed in which kinematic redundancy is used to operate the end-effector gripper in addition to avoiding singularities. This concept is based on the fact that there are in general infinitely many nonsingular configurations for a given set of Cartesian coordinates and a redundant degree-of-freedom can therefore be used to drive an action such as the opening/closing motion of a gripper while keeping the mechanism away from singularities.

The advantages of kinematic redundancy are clearly exposed in Ref. [91], where the redundantly actuated architecture originally proposed by the authors in Ref. [65] is modified to transform it into a kinematically redundant mechanism that exploits the redundancy to provide self-calibration capabilities.

In Ref. [92], a spatial kinematically redundant parallel mechanism is proposed that is akin to the Gough–Stewart platform [19–22]. Kinematically redundant parallel legs are included in a Gough–Stewart platform such that all actuators are working in parallel and are subjected to tensile or compressive loads only. It is shown that by including three parallel redundant legs—and therefore a total of nine actuators—there exists a nonsingular configuration of the mechanism for any Cartesian pose of the platform, a property that can be used to significantly increase the workspace of the mechanism.

Another class of parallel mechanisms that can be found in the literature are those with configurable platform [93–95]. These mechanisms are very similar to kinematically redundant parallel mechanisms from a mechanical point of view. Indeed, in both cases, for a fixed pose of the end-effector, internal motion is still possible in the mechanism. The difference lies in how the additional dofs are used. In the case of mechanisms with a configurable platform, the additional dofs are used to accomplish a specific task (see, for instance, Refs. [96–98]), while in kinematically redundant mechanisms, the additional dofs are completely independent from the task. Hence, parallel mechanisms with a configurable platform are not redundant mechanisms per se and will not be discussed further in this paper.

The rest of this paper is structured as follows: In Sec. 2, the concept of redundant actuation is revisited, and the modeling of redundantly actuated parallel mechanisms is formulated mathematically. The proposed formulation is then used to clearly demonstrate the features of redundantly actuated systems. Although the formalism used in the paper is mainly geared toward kinematic analysis, dynamic analysis and control schemes are also discussed based on the literature in order to highlight the implications or actuation redundancy on dynamics and control. Kinematically redundant parallel mechanisms are then discussed in Sec. 3. A general mathematical model is proposed, including a formulation of the redundancy resolution. The differences between serial and parallel redundant legs are also highlighted. Since the control of kinematically redundant parallel mechanisms is very similar to that of nonredundant mechanisms, it is not specifically discussed. Section 4 presents the derivation of the kinematics of examples of kinematically redundant legs of different types, in order to provide insight and to demonstrate the techniques that can be used in this context. Section 5 then addresses the force transmission in redundant parallel mechanisms. A summary of the different approaches that can be used to include redundancy in parallel mechanisms is presented in Sec. 6. In Sec. 7, it is pointed out that many architectures of redundant parallel mechanisms can be generated by extending the framework of this paper, and examples of such mechanisms taken from the literature are given. Finally, concluding remarks are provided in Sec. 8.

Given the kinematic/static duality between serial and parallel mechanisms, it is only natural that the first type of redundancy that was envisioned for parallel mechanisms was the actuation redundancy (see, for instance, Ref. [37]). In a parallel mechanism, actuation redundancy is obtained by adding extra kinematic legs between the moving platform and the base. Considering a *n*-dof parallel mechanism with *m* kinematic legs connecting the base to the platform, with one actuated joint in each of the legs, actuation redundancy is attained when *m* > *n*, as depicted in Fig. 1(a). For example, including more than six legs in a *m*-HPS parallel mechanism^{2} yields to actuation redundancy since in this case *n* = 6. This is illustrated in Fig. 1(b), where an 8-HPS parallel mechanism (*m* = 8) is shown.

The inverse kinematic problem of a redundantly actuated parallel mechanism is solved by writing the constraint equations associated with each of the *m* legs and solving them for the actuated joint coordinates, namely,

where *θ _{i}* is the

*i*th actuated joint coordinate,

**p**is the array containing the platform's Cartesian coordinates (position and/or orientation), and

*g*

_{a}

*is a (generally nonlinear) algebraic function.*

_{i}^{3}The

*m*actuated joint coordinates can be assembled in an actuated coordinate array, noted $\theta $ as follows:

Therefore, Eq. (1) can be rewritten as

*m*decoupled equations where

**g**

_{a}is defined as

Using the framework proposed in Ref. [18], the differentiation of Eq. (3) with respect to time then yields

where **K**_{a} and **J**_{a} are, respectively, *m* × *m* and *m* × *n* Jacobian matrices and **t** stands for the array of Cartesian velocities (velocity of a reference point of the platform and/or angular velocity). Referring to Eq. (3), it is clear that matrix **K**_{a} is diagonal. This matrix is introduced in order to avoid having denominators in matrix **J**_{a} and to simplify the equations.

From the structure of Eq. (5), it also appears clearly that for a given mechanism configuration, a prescribed Cartesian velocity array **t** yields a unique joint velocity array $\theta \u02d9$, while the joint velocity array $\theta \u02d9$ cannot be prescribed arbitrarily since it must satisfy the constraints imposed by Eq. (5).

As explained in Ref. [49], redundant actuation yields static (or dynamic) redundancy (i.e., the possibility to generate internal forces) as opposed to kinematic redundancy. Indeed, while including redundancy in serial mechanisms provides kinematic redundancy, introducing additional actuated legs in parallel mechanisms produces a different effect, namely, it yields overconstraints on the moving platform. Therefore, this type of redundancy is better explained using a static analysis, which can eventually be extended to dynamics.

Since matrix **K**_{a} is a square diagonal matrix, it can be inverted as long as none of its diagonal entries is equal to zero, a situation that corresponds to a type-I singularity of one of the legs [18]. Assuming that the mechanism is not in such a particular configuration—which often corresponds to a workspace limit—matrix **K**_{a} is easily inverted, and Eq. (5) can be rewritten as

Based on the principle of virtual work, the input virtual power at the actuators and the output virtual power at the platform must be equal, namely,

where $\tau a$ stands for the array of actuated joint forces or torques, while **w** stands for the array of Cartesian forces and/or moments at the platform. Substituting Eq. (6) into Eq. (7) then yields

Since Eq. (8) must be satisfied for arbitrary values of the platform velocity **t**, one can write

Equation (10) relates the actuated joint forces or torques $\tau a$ to the Cartesian forces and/or moments **w** through matrix $Ja\u22a4Ka\u2212\u22a4$. Since this matrix is of dimension *n* × *m* with *m* > *n*, the static redundancy appears clearly. Indeed, for a given array of forces and/or moments at the platform, **w**, there exists infinitely many actuated joint arrays $\tau a$ that satisfy Eq. (10), which corresponds to the fact that internal forces can be generated using the actuation redundancy.

As mentioned earlier, in order to obtain a reasonable accuracy or stiffness in redundantly actuated mechanisms while maintaining acceptable internal forces, it is often necessary to actively control the internal loads through the use of load cells and/or force control algorithms [32–34]. This issue has been addressed in the literature for decades in a more general framework including parallel mechanisms but also other redundantly actuated mechanical systems (see, for instance, Refs. [100–102]).

The basic models and techniques proposed for general mechanical systems can readily be applied to parallel mechanisms. Nevertheless, depending on the clearance/compliance of the joints/links and on the required accuracy, simple position controllers can be used in some instances, like in Refs. [103–105], where a simple controller is successfully implemented. However, in Ref. [106], where a 3dof redundantly actuated planar mechanism with four actuators is proposed, it is pointed out that the use of a standard position controller can produce unacceptable internal forces due to the geometric errors in the mechanism. Therefore, a force-based controller is introduced for one of the legs, and an algorithm is used to switch between force and position control according to the configuration of the mechanism. This example provides insight into the control complexity that is inherent to redundant actuation. A similar approach is used in Ref. [107].

In Ref. [58], it is proposed to use a minimum norm solution for the computation of the control torques in order to decentralize the control and alleviate the effect of antagonistic forces. This scheme is shown to be effective when applied to the integral component of the control torques. In Ref. [108], a joint synchronization technique is proposed for the control of a redundantly actuated 2dof parallel manipulator. The technique is based on the use of a common tracking error controller for multiple joints, i.e., to take into account the error of neighboring joints. In Ref. [109], a nonlinear adaptive task space controller is proposed to address these issues, while in Ref. [110], a control scheme that can guarantee a lower bound on the stiffness of the mechanism is presented. This type of behavior is important when the mechanism is to be used in or close to configurations where the nonredundant equivalent mechanism is singular.

Also, in Ref. [111], an adaptive computed torque controller is presented. It is interesting to note that the proposed controller includes friction estimation. Indeed, since redundant actuation may produce relatively large internal forces—which are sometimes desired for stiffness control—the effect of joint friction may become much more important than in nonredundant mechanisms. Also, friction may nonlinearly vary with a change of the internal forces, which justifies the use of an adaptive controller.

In Refs. [112] and [113], the effect of geometric errors on the control of redundantly actuated parallel mechanisms is studied in detail. It is shown that such errors can annihilate input torques or make intentionally generated prestress—for stiffness control—interfere with the environment. An amended proportional–derivative (PD) controller is therefore proposed in order to alleviate the effect of such geometric errors.

In Ref. [114], a dynamic model including elastic deformations is used for the control of a redundantly actuated parallel mechanism, thereby further highlighting the necessity of advanced modeling and control techniques when high performance is required. In Ref. [115], a generalized predictive controller is developed for the control of a redundantly actuated parallel mechanism.

Most of the previously mentioned references use a similar model of the parallel mechanisms, with the risk of formulation singularities. In Ref. [54], a formulation based on a redundant set of coordinates is presented in order to eliminate any possible parameterization (formulation) singularities. An augmented PD and a computed torque controller are also proposed. In addition to kinematic errors, inaccuracies in the dynamic model can also occur. In general, the errors in the dynamic model are in fact more significant than those in the kinematic model. The errors on the dynamic parameters can have consequences on the effectiveness of the control algorithm. Hence, adaptive control schemes are proposed in Refs. [111] and [116] in order to alleviate these effects. In order to further improve the performance, a nonlinear robust control is introduced in Ref. [117]. Based on experimental results obtained with a 2dof planar parallel robot with three actuators, the authors show that the performance is greatly improved, compared to the augmented PD controller previously used. However, these results should be validated on more complex mechanisms, for which a nonlinear controller may be more difficult to implement.

The singularity avoidance capabilities of redundantly actuated parallel mechanisms can be explained by referring to Eq. (5) where the Jacobian matrix **J**_{a}, which governs the type-II (parallel) singularities, is defined. Indeed, this matrix has more rows than columns, each row corresponding to a given leg of the mechanism. The condition for a type-II singularity is that this matrix becomes rank deficient. Since there are more rows than columns in the matrix, rank deficiency is a more restrictive condition than for nonredundant robots in which this matrix is square. In other words, the geometric condition on the legs is more difficult to obtain. Nevertheless, kinematic singularities may still be possible, depending on the geometric design and workspace of the mechanism since, for a given Cartesian pose of the platform, the configuration of the mechanism is determined (there is no kinematic redundancy). In other words, singularities may be avoided at the design stage, but nothing can be done at the trajectory planning stage.

Additionally, the ability of a redundantly actuated parallel mechanism to adjust the stiffness or the force distribution in the links is explained by referring to Eq. (10), where matrix $Ja\u22a4Ka\u2212\u22a4$ has more columns than rows. Therefore, as mentioned earlier, the distribution of the forces in the actuators—and hence in the links—can be adjusted. Nevertheless, it should be kept in mind that Eq. (10) constrains the distribution of the forces, and therefore, the adjustment of the forces in the actuators is somewhat limited, and the latitude that this adjustment provides is dependent on the degree of redundancy in the mechanism. Moreover, the stiffness of a given redundantly actuated parallel mechanism is highly dependent on its mechanical construction, i.e., the types of links and joints used, and whether the links are subjected to bending.

Although the concept of redundant actuation presented in Sec. 2 proceeds naturally from the architecture of parallel mechanisms, kinematically redundant parallel mechanisms can also be synthesized. A kinematically redundant parallel mechanism is one in which the number of actuators is equal to the total degree-of-freedom of the mechanism, but where the degree-of-freedom of the platform (end-effector) is smaller than the total degree-of-freedom of the mechanism. In other words, compared to nonredundant parallel mechanisms, additional actuators and additional degrees-of-freedom are both introduced in order to obtain an architecture that is statically determined (no actuation redundancy), as illustrated in Fig. 2. Referring to the basic architecture of a parallel mechanism, kinematic redundancy is generally obtained by introducing additional degrees-of-freedom and actuators in some of the legs, instead of by introducing additional legs like in the case of redundant actuation. The result is that, for a given pose of the platform, some internal motions in the mechanism are possible. For example, the redundant legs of Fig. 2(c) can move independently (1dof each) from the platform configuration. As it will be discussed in this section, there are two ways of including kinematic redundancy in the legs, namely, by introducing serial redundancy or parallel redundancy.

Similarly to the case of the redundantly actuated parallel mechanisms, the inverse kinematic problem of kinematically redundant parallel mechanisms is solved by writing the constraint equations associated with each of the *m* legs and solving them for the actuated joint coordinates. However, since the mechanism is kinematically redundant, the inverse kinematic problem yields infinitely many solutions. Consider the case for which *r* of the *m* legs are kinematically redundant. Also, assume that the number of actuators in the *i*th redundant leg is *r _{i}*. One can then write

where *θ _{ij}* is the

*j*th actuated joint coordinate of the

*i*th leg,

**p**is the array containing the platform's Cartesian coordinates (position and/or orientation), and

*g*

_{k}

*is a (generally nonlinear) algebraic function. The total number of actuated joints in the*

_{i}*r*kinematically redundant legs, noted

*v*, is given by

Since the remaining (*m* − *r*) legs are not redundant and each contain one actuator, the total number of actuated joints in the mechanism, noted *u*, is therefore given by

Globally, the mechanism has *m* legs, *u* actuators, *u* degrees-of-freedom (*u* > *m*), and its platform has *m* degrees-of-freedom, the extra degrees-of-freedom corresponding to the redundant motion of the *r* kinematically redundant legs.

For the (*m* − *r*) nonredundant legs, the solution of the inverse kinematic problem is written as

where *g*_{k}* _{i}* is an algebraic function. In other words, for a given pose (Cartesian coordinates) of the platform, the actuated joint coordinates associated with the nonredundant legs are obtained directly from Eq. (14), while Eq. (11) provides the kinematic constraints on the actuated joint coordinates associated with the redundant legs. There is one constraint equation for each redundant leg, and these equations are decoupled, leg by leg.

The *u* actuated joint coordinates can be assembled in an actuated coordinate array, noted $\theta $ as follows:

Therefore, Eqs. (11) and (14) can be assembled and rewritten as

*m*equations. The last (

*m*−

*r*) equations are decoupled, while the first

*r*equations are decoupled leg by leg but with the

*i*th equation including the

*r*actuated joint variables of leg

_{i}*i*. The differentiation of Eq. (16) with respect to time then yields

where **K**_{k} and **J**_{k} are, respectively, *m* × *u* and *m* × *m* Jacobian matrices, and it is recalled that *u* stands for the number of actuated joints. Since *r _{j}* > 1, ∀

*j*, and referring to Eq. (13), one has

*u*>

*m*, which corresponds to the kinematic redundancy, as described earlier. Matrix

**K**

_{k}has a special structure and can be written as follows:

where **K**_{k1} is a (*r* × *v*) block corresponding to the redundant legs, while **K**_{k2} is a ((*m* − *r*) × (*m* − *r*)) diagonal block corresponding to the nonredundant legs and **0**_{i}_{×}* _{j}* stands for a zero matrix of dimension (

*i*×

*j*). Block

**K**

_{k1}also has a special structure. Each of its columns contains only one nonzero entry, while its

*i*th row contains only

*r*nonzero entries, namely, the number of actuated joints in the

_{i}*i*th (redundant) leg. A detailed example of the structure of matrix

**K**

_{k}is given in Ref. [92] for a spatial 9dof kinematically redundant parallel mechanism similar to the Gough–Stewart platform.

From the structure of Eq. (17), it appears clearly that for a given mechanism configuration, a prescribed Cartesian velocity array **t** yields infinitely many feasible joint velocity arrays $\theta \u02d9$ while a prescribed joint velocity array $\theta \u02d9$ yields a unique Cartesian velocity array **t**, provided that matrix **J**_{k} is of full rank (no type-II singularity). This is in contrast with the situation encountered with redundantly actuated mechanisms and presented in Sec. 2. In the present case, the total number of degrees-of-freedom, *u*, is equal to the total number of actuators. Also, given the special structure of matrix **K**_{k} described earlier, it is observed that the solution of the inverse kinematic problem for the nonredundant legs yields a finite number of solutions, and therefore, the redundancy resolution can focus strictly on the redundant legs.

In order to develop the static analysis, it is now assumed that matrix **J**_{k} is of full rank, i.e., that the mechanism is not in a type-II singular configuration. Equation (17) can then be rewritten as

Equation (7) can also be written for the kinematically redundant mechanisms as

where $\tau k$ stands for the array of actuated joint forces or torques while **w** stands for the array of Cartesian forces and/or moments at the platform, for a kinematically redundant mechanism. Substituting Eq. (19) into Eq. (20) then yields

Since Eq. (21) must be satisfied for arbitrary values of the actuated joint velocities $\theta \u02d9$ (in this case the number of actuated joints is equal to the degree-of-freedom of the mechanism), one can equate the expressions multiplying vector $\theta \u02d9$ in this equation. Taking the transpose of the resulting equation then yields

Similarly to Eq. (10) for the redundantly actuated mechanisms, Eq. (22) relates the Cartesian forces and/or moments **w** to the actuated joint forces or torques $\tau k$ through matrix $Kk\u22a4Jk\u2212\u22a4$, for kinematically redundant mechanisms. This matrix is of dimension *u* × *m*, with *u* > *m*. Therefore, it is clear that, for a given configuration of the mechanism, a prescribed Cartesian force/torque array at the platform yields a unique array of joint forces or torques $\tau k$. On the other hand, the actuator forces or torques cannot be prescribed arbitrarily because they must satisfy Eq. (22). This situation is very similar to the one encountered in redundant serial manipulators. Indeed, the structure of Eqs. (19) and (22) is akin to that of the equations obtained for serial manipulators. However, since the Jacobian matrix mapping the actuated joint velocities into the platform velocities is the product of two Jacobian matrices, one of which having a special structure (see Eqs. (18) and (19)), the resolution of the redundancy can be adapted to take advantage of this structure, as explained in Sec. 3.3.

It should also be pointed out that, although the distribution of the forces in the actuators is unique for a given configuration of a kinematically redundant parallel mechanism, the configuration itself can be modified. Therefore, one could argue that the force distribution in the actuators can be indirectly controlled by adjusting the configuration of the mechanism since there exist infinitely many configurations for a given Cartesian pose of the mechanism. A similar statement can be made regarding the stiffness of the mechanism, namely, the Cartesian stiffness can be adjusted by modifying the configuration of the mechanism. Nevertheless, similarly to the case of the redundantly actuated mechanisms, the force or stiffness adjustment capabilities of a given mechanism obviously depend on its degree of redundancy.

The nomenclature to be used to refer to kinematically redundant mechanisms is also an open issue. A mechanism with *m* dofs at the end-effector and a total of *u* dofs can be referred to as a *m*-dof manipulator or as a *u*-dof mechanism. Both names lack some important information, and this nomenclature is therefore confusing. In general, such a mechanism is referred to as a *m*-dof manipulator in the literature. To avoid confusion, it is proposed here to refer to a kinematically redundant mechanism as a (*m* + *z*)-dof robot, where *m* is the degree-of-freedom of the end-effector, and *z* = *v* − *r* is the number of redundant degrees-of-freedom in the robot. For example, according to this notation, the mechanism described in Ref. [81] is a (3 + 3)-dof robot because it has three useful dofs at the end-effector and three redundant dofs, thus yielding a 6dof mechanism. Similarly, the mechanism proposed in Ref. [88] is a (3 + 1)-dof robot, and the architecture presented in Ref. [92] is a (6 + 3)-dof robot.

The solution of the inverse kinematic problem of kinematically redundant serial manipulators has been the subject of numerous publications and is a mature subject (see, for instance, Ref. [6]). The most common approach consists in using the velocity equations, which form an underdetermined linear system of equations. A minimum norm solution of the joint velocity array that produces the prescribed Cartesian velocities is computed, and an extra term is added to this joint velocity array that is contained in the nullspace of the Jacobian matrix, in order to optimize some performance index.

For kinematically redundant parallel mechanisms, Eq. (19) can be rewritten as

where matrix **U** is of dimension *m* × *u*, with *u* > *m*. Since matrix **J**_{k} is assumed to be of full rank, the nullspace of matrix **U** is in fact the nullspace of matrix **K**_{k}. Also, considering Eq. (18), and assuming that matrices **K**_{k1} and **K**_{k2} are of full rank, it can be observed that the nullspace of matrix **K**_{k}, noted $N(K)$, is readily obtained and can be described as

*r*first rows of matrix

**K**

_{k}and having their last (

*m*−

*r*) components equal to zero. This set of vectors is easily determined because of the special structure of matrix

**K**

_{k1}, namely, the fact that each column of

**K**

_{k1}contains only one nonzero component. In other words, vector $\sigma i$ has

*u*components and only (

*r*

_{k}− 1) nonzero entries, where

*r*

_{k}is the number of actuators in the leg associated with the row of matrix

**K**

_{k}being considered. The (

*m*−

*r*) last components of vectors $\sigma i$ being equal to zero corresponds to the fact that, for given Cartesian coordinates of the platform, the joint coordinates of the nonredundant legs are determined. It can also be observed that vectors $\sigma i$ form a set of orthogonal vectors, which corresponds to the fact that the redundancy of the robot is decoupled, i.e., the use of the redundancy in one of the redundant legs has no impact on the other legs. Hence, the resolution of the redundancy is very easily computed. The general solution of the velocity equations can then be written as

where **U*** ^{I}* is the generalized inverse corresponding to the minimum norm solution, namely, $UI=U\u22a4(UU\u22a4)\u22121$,

*ξ*is a scaling factor used to adjust the magnitude of the second term of the solution with respect to the first one,

*η*is a performance index to be minimized, and matrix

**P**= (

**1**−

**U**

^{I}**U**) projects any vector onto the nullspace of matrix

**U**, where

**1**stands for the identity matrix. Based on the earlier description of the nullspace of matrix

**U**(Eq. (25)) and since vectors $\sigma i$ form an orthogonal base of this nullspace, it is clear that the second term of Eq. (27) can be readily computed as the following sum of scalar products, namely,

In practice, since the last (*m* − *r*) components of vector $\sigma i$ are equal to zero, the last (*m* − *r*) components of vector $(\u2202\eta /\u2202\theta )$ need not be computed. This corresponds to the fact that the nonredundant legs do not contribute to the redundancy resolution. The above-described scheme for the solution of the inverse kinematic problem of kinematically redundant parallel mechanisms was first presented in Ref. [92].

The kinematic redundancy described earlier can be implemented in two different ways, namely, by introducing either serial or parallel redundant legs in a given mechanism, as illustrated in Fig. 2. The derivation provided in Sec. 3.3 is applicable to both cases. In the case of parallel redundant legs (see example of Fig. 2(c)), writing the constraint equations (Eq. (11)) requires one additional step. Indeed, in this case, the redundant motion cannot directly be written in terms of the actuated joint coordinates because the attachment to the moving platform is done through a serial chain common to the parallel subchains constituting the redundant leg. Therefore, the derivation of the global Jacobian matrices requires the inversion of a Jacobian matrix associated with the parallel redundant leg. However, in typical cases (see, for instance, Refs. [88] and [92]), this matrix is rather simple, and the possible degeneracies are easily identified. Such degeneracies correspond to the type-II singularities of the parallel redundant leg. For example, in the planar kinematically redundant parallel mechanism presented in Ref. [88], it is easily shown that a degeneracy of the Jacobian of the redundant leg occurs if and only if the common joint to which the two sublegs of the redundant leg are attached is located on a line connecting the base attachment points of the sublegs. This is illustrated in Fig. 3 where a mechanism similar to the one proposed in Ref. [88] is shown.

It should also be noted that only degeneracies of type I can occur inside the serial redundant legs of kinematically redundant parallel mechanisms.

Although it is not apparent in the equations derived earlier, one main difference between the serial and parallel redundant legs is the pattern of transmission of the forces. This issue is of great importance in a practical design and is addressed in Sec. 5.

An alternative approach can also be used to model kinematically redundant mechanisms with fully parallel legs. The *v* − *r* redundant degrees-of-freedom (internal to the redundant legs) can be included in a common array with the *m* Cartesian coordinates, leading to an extended Cartesian coordinate vector (**x*** _{e}*) of dimension

*u*=

*m*+

*v*−

*r*. This results in two square extended Jacobian matrices of dimension

*u*×

*u*,

**J**

_{ke}and

**K**

_{ke}, thus allowing to express the actuator velocities as functions of the extended Cartesian velocities, namely ($\rho \u02d9=Kke\u22121Jkex\u02d9e$), and to evaluate the stiffness matrix of the mechanism as $Ak=kJke\u22a4Kke\u2212\u22a4Kke\u22121Jke$. Also, the extended Jacobian matrices can be used in the solution of the direct kinematic problem.

In this section, the kinematic analysis of three different kinematically redundant legs is presented in order to provide examples of complex leg modeling. Applying these examples to complete manipulators is straightforward since the kinematic model of each leg of a parallel manipulator can be derived independently from the other legs. Each leg yields one velocity equation, which corresponds to one row of Eq. (17).

This leg was introduced in Ref. [92] where a manipulator using multiple legs of this type is investigated. Referring to Fig. 4, a fixed reference frame *Oxyz* is defined on the base, and a moving reference frame $Px\u2032y\u2032z\u2032$ is defined on the platform. In the fixed reference frame, the position vector of the center of the Hooke joints (universal joints) attached to the base, point *A _{i}*, is noted as

**a**

*. Similarly, the position vector of the center of the spherical joint connecting the leg to the platform, point*

_{i}*B*, is noted as

**b**. The position vector of the center of the revolute joint connecting the two sublegs, point

*S*, is noted

**s**. Additionally, a vector

**e**is defined along the axis connecting the centers of the Hooke joints of the leg, namely,

and the length of the link connecting point *S* to point *B* is denoted as *ℓ*. Finally, the extension of the *i*th actuator is noted as *ρ _{i}*. The position vector of point

*B*can be written as

where **v**_{0} is the (constant) position vector of point *B _{i}* with respect to point

*P*, expressed in the reference frame $Px\u2032y\u2032z\u2032$ attached to the platform. This vector connecting point

*P*to point

*B*is denoted

**v**when expressed in the fixed reference frame. Referring to Fig. 4, the constraint corresponding to the length of the link connecting point

*B*to point

*S*can be written as

and the time derivative of this equation is written as

Similarly, the constraint corresponding to the length of each of the sublegs can be written as

where *ρ*_{1} and *ρ*_{2} are the joint coordinates associated with the two actuators of the redundant leg. Additionally, since the two sublegs are connected with a revolute joint located at point *S* and since the axis of this joint is orthogonal to the plane defined by the sublegs, namely, the plane defined by points *A*_{1}, *A*_{2}, *S*, and *B*, it can be concluded that vectors (**b** − **a**_{1}), **e**, and (**s** − **a**_{1}) must be coplanar. This condition can be expressed as

Differentiating Eqs. (33) and (34) with respect to time and writing the result in matrix form, one obtains

where matrix **H** and vector **w** are, respectively, defined as

Solving Eq. (35) for vector $s\u02d9$ and substituting the result into Eq. (32) yield the velocity equation associated with the redundant leg involving only the Cartesian velocities of the platform and the actuated joint velocities. Moreover, using the above equations, an explicit algebraic solution to this problem can be obtained. Indeed, the inverse of matrix **H** can be written as

where Adj(**H**) stands for the adjoint of matrix **H**, and det(**H**) stands for its determinant. Using Eq. (36), expressions for Adj(**H**) and det(**H**) (henceforth noted *μ*) are readily obtained as

where vectors **h*** _{i}*,

*i*= 1, 2, 3, can be written as

It can be observed from Eq. (39) that matrix **H** is of full rank as long as the two sublegs (vectors (**s** − **a**_{1}) and (**s** − **a**_{2})) are not aligned and as long as point *B* is not located on the line passing through points *A*_{1} and *A*_{2}. In a practical design, it is easy to ensure that these two situations cannot occur.

Solving Eq. (35) for vector $s\u02d9$ and using Eqs. (40), (39), and (37), one then obtains

Substituting Eqs. (40), (39), and (37) into Eq. (44), one then obtains an expression for $s\u02d9$ that can be written as

where vectors **h*** _{i}* are defined in Eqs. (41)–(43). Finally, substituting the above expression and the time derivative of Eq. (30) into Eq. (32) and noting that the last term of Eq. (45) is orthogonal to vector (

**b**–

**s**), one obtains the velocity equation associated with the redundant leg as

with

It can be observed that one of the coefficients of the joint velocities ($\rho \u02d91$ or $\rho \u02d92$) vanishes if the other prismatic joint is aligned with the link connecting point *B* to point *S*. Hence, the coefficients cannot vanish simultaneously unless the sublegs are aligned, which is easily avoided by design. Equation (46) constitutes the velocity equation corresponding to the leg. This equation involves the joint velocities of the leg—$\rho \u02d91$ and $\rho \u02d92$—as well as the Cartesian velocities of the platform—$p\u02d9$ and $\omega $. Therefore, if the Jacobian matrices are defined according to Eq. (17), a row of matrix **J** corresponding to a redundant leg of this type is written as

**K**contains two nonzero entries, equal, respectively, to (

**b**−

**s**)

^{T}

**m**and (

**b**−

**s**)

^{T}

**n**, in the columns associated with the two actuated joint coordinates of this leg, namely, $\rho \u02d91$ and $\rho \u02d92$. It should be pointed out that, although the velocity of the intermediate passive joints has been eliminated in the derivation, the conditions under which this elimination could yield to degeneracies have been explicitly noted and can thus be taken into account in design or trajectory.

This leg uses three prismatic actuators connected to the base at points *A _{i}*,

*i*= 1, 2, 3, with Hooke joints and connected to a fourth prismatic actuator at point

*S*with spherical joints. The fourth prismatic actuator is connected to the platform at point

*B*, also with a spherical joint. This architecture is represented schematically in Fig. 5. First, the constraint equation on the length of the fourth actuator is written as

and upon differentiation with respect to time becomes

The constrain equation on the length of the other three actuators is written as

and upon differentiation with respect to time becomes

Equation (53) can be written in matrix form as

Matrices **H** and **G** are in fact the Jacobian matrices of the 3dof mechanism composed of the first three actuators and which is used to position point *S* relative to the base. Matrix **H** becomes singular if vectors $(s\u2212ai)T,\u2003i=1,2,3$, are coplanar. From Eq. (54), $s\u02d9$ can be expressed as

The Cartesian velocities of the platform—$p\u02d9$ and $\omega $—can be used to express $b\u02d9$ as

and finally replacing Eqs. (57) and (58) into Eq. (51) yields

The inverse of matrix **H** is easily obtained using Eqs. (38) and (40) with

and vectors **h*** _{i}* written as

Therefore, if the Jacobian matrices are defined according to Eq. (17), a row of matrix **J** corresponding to a redundant leg of this type is written as

**K**contains four nonzero entries, equal to $[(1/\mu )(b\u2212s)T(h1\rho 1\u2003h2\rho 2\u2003h3\rho 3)\u2003\rho 4]$, in the columns associated with the four actuated joint coordinates of this leg.

This leg is very similar to the first example (2(UPR)-S). The difference is that point *A*_{2}, instead of being connected to the base, is connected to a third prismatic actuator which is itself rigidly connected to the base at point *A*_{3} and aligned with vector **u** (see Fig. 6). The extension of the third actuator is noted *ρ*_{3}. The constraint equation on the length of the link connecting point *S* to point *B* is

and upon differentiation with respect to time becomes

The constrain equation on the length of the first two prismatic actuators is written as

and once differentiated with respect to time becomes

*B*,

*S*,

*A*

_{1}, and

*A*

_{2}all lie in the same plane because revolute joints are used to connect the two actuators to the rigid link of length

*ℓ*at point

*S*. This condition can be expressed as

Equations (69) and (71) can be written in matrix form as

where

Solving Eq. (74) for $s\u02d9$ and substituting the result in Eq. (67) yield

Finally, substituting Eq. (58) into Eq. (79) gives the corresponding velocity equation of the leg

where

With the Jacobian matrices defined according to Eq. (17), a row of matrix **J** corresponding to a redundant leg of this type is written as

**K**contains three nonzero entries, equal to (

**b**−

**s**)

^{T}[

**n**

_{1}

**n**

_{2}

**n**

_{3}], in the columns associated with the three actuated joint coordinates of this leg.

The example derivations presented earlier illustrate the procedure that can be used to analyze different architectures of redundant legs. It is noted that the final result, i.e., the expression of the row of the velocity equations that corresponds to a given leg, clearly highlights the screw corresponding to this leg. This result is therefore very useful for the singularity analysis. Also, the procedure allows one to identify the possible degeneracies that could occur in the elimination procedure. Finally, assembling the Jacobian matrices of a manipulator constructed with different legs is straightforward once the analysis has been completed for each of the legs.

As mentioned earlier, antagonistic internal forces can be generated in redundantly actuated parallel mechanisms (refer to Eq. (10)). In other words, unless there is sufficient compliance or clearance in the mechanism—which can be in contradiction with the objectives of parallel mechanisms—it is generally required to use force or torque sensors and force control algorithms to control redundantly actuated parallel mechanisms (see, for instance, Ref. [106]). Indeed, in the presence of inevitable inaccuracies, the sole control of the actuator positions may induce large internal forces [112]. Control schemes based on measurements provided by force or torque sensors were proposed (for instance, in Ref. [110]) and successfully implemented (for instance, in Refs. [32–34]). The results clearly demonstrate the feasibility of this approach. Nevertheless, the control is more involved than a standard position control, and this approach may be more difficult to apply when large payloads are involved.

On the other hand, the transmission of the forces in kinematically redundant parallel mechanisms is quite different from that taking place in redundantly actuated parallel mechanisms. Indeed, since kinematically redundant parallel mechanisms have as many degrees-of-freedom as actuators, no antagonistic forces can be generated by the actuators, i.e., the mechanism is statically determined. This yields advantages and disadvantages. On the negative side, if no antagonistic forces are generated, it is not possible to control backlash like in redundantly actuated mechanisms [55]. However, on the positive side, a statically determined mechanism is much easier to control since simple standard control techniques can be used.

As mentioned earlier, kinematic redundancy can be implemented in parallel mechanisms using either serial redundant legs or parallel redundant legs. Most of the kinematically redundant architectures proposed in the literature are based on serial redundant legs, i.e., they include actuators mounted in series in the redundant legs of the mechanism. In such an arrangement, the actuators in the redundant legs operate in series, i.e., some actuators must move other actuators. Such an arrangement is in fact detrimental to the properties of the mechanisms. Indeed, parallel mechanisms are generally motivated by two types of applications, namely, (i) applications that require high stiffness or high payloads (where prismatic actuators are typically used, such as in flight simulators, for instance, where payloads may be of several tons) or (ii) applications that require high speeds and accelerations (where revolute actuators are typically used, such as in pick-and-place robots, for instance).

Although it reduces the possibilities of mechanical interferences between the legs, having actuators mounted in series in some or all of the legs is a major drawback in both cases. In the former case, the stiffness or load-carrying capacity is greatly compromised, while in the latter case, the feasible accelerations are drastically reduced because some of the actuators are moving. Therefore, having all actuators mounted in parallel is an important feature, which allows the very basic properties of parallel mechanisms to be preserved. Thus, from a force transmission perspective—which is a key issue in the design of parallel mechanisms—the use of parallel redundant legs for the construction of kinematically redundant parallel mechanisms should be preferred because it leads to much more favorable architectures.

An exception to this are the architectures in which the redundant actuators mounted in series are used to reconfigure the base of the robot but are not used during motion. Nevertheless, in such cases the impact of the redundancy is more limited. Such robots should in fact be considered as reconfigurable instead of redundant.

The architectures proposed in Refs. [88] and [92] are examples of kinematically redundant parallel mechanisms based on parallel redundant legs. It can be observed that they lead to force transmission properties that preserve the nature of parallel mechanisms and they can be used in applications where very large payloads are required or where high accelerations are needed. In particular, the architecture proposed in Ref. [92] and shown in Fig. 2(c) can be thought of as an extension of the Gough–Stewart platform—with a significantly improved rotational workspace—because it retains the characteristics and the basic properties of the original Gough–Stewart platform, namely, the fact that all actuated legs are subjected to only axial loads, which allows a very efficient use of material.

It is interesting to note that kinematically redundant parallel mechanisms based on parallel redundant legs were alluded to in Ref. [104] but were quickly dismissed in favor of redundantly actuated parallel mechanisms. The authors of Ref. [104] justified their design choice using a kinematic analysis based on the condition number of the Jacobian matrix—and not on force transmission properties. As shown in Ref. [118], the condition number and other similar indices should be used with care and may not be a proper indication of the real capabilities of a mechanism. Indeed, the condition number of the Jacobian matrix is unit-dependent, and additionally, it does not take into account type-II singularities occurring inside the redundant legs. Matrix **K**_{k} must be considered to this end. Also, a purely kinematic analysis does not take into account the static loading of the mechanical components, which is a very important design issue. Therefore, it is believed that the previously mentioned discussion, based on the transmission pattern of the forces in the redundant legs, is a stronger argument than the kinematic analysis provided in Ref. [104].

Based on the literature, four different avenues that can be used to synthesize redundant parallel mechanisms were highlighted in this paper. Starting with a statically determined parallel mechanism having one actuator in each of the legs connecting the base to the platform, these avenues can be described as follows: (1) actuate some of the passive joints in the existing legs, (2) introduce additional actuated legs in parallel with the existing legs, (3) add new actuated joints in the existing legs to make them redundant, and (4) replace some of the legs with kinematically redundant parallel legs. Cases (1) and (2) lead to actuation redundancy, while cases (3) and (4) lead to kinematic redundancy. Moreover, cases (2) and (4) preserve the parallel actuation nature of the mechanism, while cases (1) and (3) do not. This observation is important and was not always fully appreciated in the literature. Table 1 summarizes this classification, and an example illustrating the four classes of redundancy is shown in Fig. 7.

It is interesting to note that architectures of kinematically redundant parallel mechanisms synthesized using parallel redundant legs (case (4) in Table 1) are completely elusive to the general type synthesis methods presented in Refs. [119] and [120]. Indeed, although the methods proposed in these references can be used to generate hundreds or even thousands of architectures of parallel mechanisms, they rely on a basic topological structure that does not include that of the kinematically redundant parallel mechanisms of case (4) (Table 1) proposed here. In other words, these architectures do not fall within the definition of a parallel mechanism used in Refs. [119] and [120], although their actuation is parallel, and their structure is very attractive from a force transmission point of view and from a practical perspective. One can therefore conjecture that there may be a large number of architectures of type (4) (Table 1) that have not yet been revealed.

Additionally, there are also many other possible arrangements of redundant parallel mechanisms that do not fall within the modeling framework proposed in this paper. In other words, even if the standard synthesis techniques—for instance, those proposed in Refs. [119] and [120]—were extended to include the modeling framework of this paper, many redundant architectures would still be missing. Indeed, it is possible to devise architectures of redundant parallel mechanisms that make use of intermediate bodies to implement the kinematic redundancy and in which there are kinematic connections between the legs. Therefore, the complexity and the number of possible architectures are virtually unbounded. Such architectures do not fall within the modeling proposed here and in the literature because of the presence of intermediate bodies. Examples of such redundant parallel mechanisms that are elusive to the formulation proposed in this paper are the 12dof Dodekapod [77] (see Fig. 8(a)) and the 9dof redundant parallel mechanism proposed in Refs. [76] and [78] (see in Fig. 8(b)). The topological graphs of these devices (shown in Figs. 8(c) and 8(d)) are more complex than those of the models proposed in this paper.

A review of the literature pertaining to redundant parallel mechanisms is presented in this paper. Actuation redundancy and kinematic redundancy were treated separately, and their fundamentally different nature was highlighted using proper mathematical modeling. Four different cases of redundancy were identified, namely, two subcases of actuation redundancy and two subcases of kinematic redundancy. It was pointed out that only two of these subcases preserve the parallel nature of the mechanisms. Therefore, these two cases are believed to be the most promising, at least for most applications.

Based on the literature and on the discussion provided in this paper, it appears that redundant parallel mechanisms have great potential in several applications. Indeed, introducing redundancy in parallel mechanisms enhances their mechanical properties.

On the one hand, redundantly actuated parallel mechanisms are much less prone to type-II singularities than conventional parallel mechanisms. Also, actuation redundancy can be used to control antagonistic internal forces, to alleviate the backlash, and to adjust the apparent stiffness of the mechanisms. This feature can be of great interest in precision applications and in haptic devices.

On the other hand, kinematically redundant parallel mechanisms can avoid singularities by using their internal mobility, thereby leading to improved workspace capabilities. They are also easy to control because simple position controllers can be used.

In both cases, the discussion on the force transmission characteristics presented in this paper stressed the importance of using a parallel actuation scheme. Indeed, such an actuation scheme is at the essence of parallel mechanisms.

Although very effective architectures of kinematically redundant parallel mechanisms were introduced in the recent literature, it was mentioned that these architectures are elusive to state-of-the-art type synthesis approaches. Therefore, it is conjectured that several other similar architectures may exist and that such architectures may lead to the development of novel parallel mechanisms with great potential for a variety of applications.

Future designs of parallel mechanisms are expected to provide high performance and effectiveness. Therefore, the use of redundancy is likely to become prevalent in order to exploit parallel mechanisms to their full potential, thereby extending the range of applications in which they can be used.

This work was supported by the Natural Sciences and Engineering Research Council of Canada (NSERC) and by the Canada Research Chair program.