# Kinematic modeling and task-based design of a URRR-URR parallel mechanism for percutaneous interventions

Kevin Gaitan, Juan Sandoval, Stéphane Caro

► To cite this version:

Kevin Gaitan, Juan Sandoval, Stéphane Caro. Kinematic modeling and task-based design of a URRR-URR parallel mechanism for percutaneous interventions. ASME Letters in Translational Robotics, 2026, 2 (1), pp.011001. 10.1115/1.4070147. hal-05335367v2

HAL Id: hal-05335367

https://hal.science/hal-05335367v2

Submitted on 10 Dec 2025

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Kinematic modeling and task-based design of a URRR-URR parallel mechanism for percutaneous interventions

Percutaneous interventions, including biopsies, thermal ablations, and regional anesthesia, involve the insertion of an instrument into the patient's body to remove tissue or manage pain. In this context, the use of a robotic assistant is suitable to guide the medical gestures, leading to a more time effective intervention and better patient care. For this purpose, this paper introduces a novel URRR-URR parallel mechanism. The constraint and mobility analysis of the mechanism is performed using screw theory. A methodology for determining the solution to its Direct and Inverse Geometric Models is presented. The forward and inverse kinematic Jacobian matrices of the mechanism are then expressed. Some singularities of the mechanism are identified and illustrated. Additionally, the design problem of the parallel manipulator (PM) under study is formulated as a bi-objective optimization problem. The first objective function is expressed in terms of the condition number of the forward and inverse Jacobian matrices. The second objective function deals with the mechanism size. Lastly, the non-dominated Pareto-optimal solutions are obtained and three Pareto-optimal solutions are detailed.

**Keywords:** Parallel mechanism, RCM, Percutaneous interventions, Screw theory, Geometric modeling, Kinematic modeling, Task-based design, Condition number, Robotic assistance

**Kevin Gaitan**

Nantes Université, École Centrale de Nantes,
CNRS, LS2N, UMR 6004,
44321 Nantes, France
email: kevin.gaitan@ls2n.fr

**Juan Sandoval**

Nantes Université, École Centrale de Nantes,
CNRS, LS2N, UMR 6004,
44321 Nantes, France
email: juan.sandoval@ls2n.fr

**Stéphane Caro<fnref n="1" />**

ASME Member
Nantes Université, École Centrale de Nantes,
CNRS, LS2N, UMR 6004,
44321 Nantes, France
email: stephane.caro@ls2n.fr

## 1 Introduction

Percutaneous interventions typically require medical practitioners to manipulate a puncture tool within a cone-shaped workspace constrained by a fixed skin entry point. Examples of such interventions include coronary interventions [1], biopsies [2–4], epidural anesthesia [5,6], and thermal ablations [7,8]. According to [9–11], practitioners often manipulate the tool within a conical workspace with an angular range of about 60°. Furthermore, they frequently need to adjust the puncture tool by rotating around 90° to both sides [10]. The puncture instrument operates around a fixed point, known as the Remote Center-of-Motion (RCM), defined by the skin entry point. To reach the target location, practitioners rotate and translate the instrument around the RCM. Therefore, a minimum of three degrees-of-freedom are required: two rotational and one translational degrees of freedom. In robotic solutions, an RCM may be achieved in two ways: through control laws [12] or by mechanical design [13]. While achieving an RCM via control is feasible, ensuring it through mechanical design is preferred in medical applications, as it reduces complexity and simplifies control, as explained in [14,15].

The work presented in this paper was carried out as part of the PercuCob project<fnref n="2" />, which aims to design a system that can be integrated with robotic arms in the operating room (OR) in order to perform percutaneous interventions. The project's concept and working principle<fnref n="3" /> are depicted in Fig. 1. The system consists of a robotic arm (macro-robot) equipped with a remote center-of-motion (RCM) device (mini-robot) attached to its end-effector. The RCM device holds the puncture instrument required for the intervention. This macro-mini architecture is co-manipulated in direct

<figure><img src="image_2.png" /><figcaption>**Figure 1** 3D representation of the PercuCob project's experimental platform with the URRR-URR parallel mechanism under study circled in red.</figcaption></figure>

contact by the medical practitioner. After the pre-positioning stage, during which the system is accurately aligned with the patient's desired incision point, the macro-robot is locked in place, allowing only the RCM device to move. A second robotic arm, equipped with an ultrasound probe, ensures that both the needle and the surrounding organs or tissues remain continuously within view. This real-time visualization enables the RCM device to provide active guidance by restricting or enforcing specific practitioner gestures when necessary, thereby improving safety and accuracy during the intervention.

The work presented in [13] introduces a type synthesis method and kinematic analysis for a family of two-degree-of-freedom (2-DOF) RCM mechanisms, which are based on two translational DOFs and a redundant constraint linkage. In [14], a novel RCM mechanism for subretinal surgery is proposed. This mechanism leverages the concept of intersecting motion planes to achieve me-

<footnote n="1">¹Corresponding Author.
Version 1.26. October 8, 2025</footnote>

<footnote n="2">²This project is supported by the French government under the France 2030 Investment Plan, by the Pays de la Loire Region and by NExT.</footnote>

<footnote n="3">³A video illustrating the concept and working principle is available at https://youtu.be/SM746RPH5G8</footnote>
<figure><img src="image_3.png" /><figcaption>Figure 2 A mockup of the URRR-URR PM.</figcaption></figure>

chanical RCM by combining two parallelogram mechanisms: a 1R parallelogram and a 1T1R parallelogram. This configuration is proven to achieve a 1T2R motion type. In another study focused on eye surgery [15], a 2-DOF planar RCM mechanism is presented. As this mechanism is intended for eye surgery, the volume occupied by the end-effector is significantly reduced. While these previous works provide viable alternatives for RCM mechanisms, they do not fully meet the requirements of the current project. Specifically, the system must cover a cone-shaped workspace, as defined in the literature, and require one translational and two rotational motions around an RCM point, namely, the insertion point. Double parallelogram mechanisms, although effective, tend to be complex, and their compactness and simplicity may be compromised in order to improve the translational motion required for percutaneous interventions. In contrast, this project demands that the RCM device be as compact and simple as possible, as it will be integrated with a larger macro system. Single parallelogram mechanisms typically provide two rotational DOFs, with translational motion added by a motor in serie. However, the application also requires that the motors be remote, minimizing inertia, as the system will be in direct contact with the medical practitioner.

In [16], a family of RCM mechanisms with intersecting motion planes is presented. The proposed design includes a 2-URR parallel mechanism, which has been shown in prior research to exhibit a 1T1R motion type. However, since the motion type required for percutaneous interventions is 1T2R, the 2-URR mechanism is not suitable for the targeted application. To address this limitation, [17] proposes the addition of a revolute joint to one of the two limbs, resulting in a URRR-URR parallel mechanism. A mockup of this mechanism is shown in Fig. 2. A wrench analysis of the resulting URRR-URR parallel manipulator (PM) presented in [17], based on the approach described in [18,19] shows that the URRR-URR PM is capable of performing the 1T2R motion type that is required to cover the desired regular cone-shaped workspace.

This work builds upon the research presented in [17] by further investigating the URRR-URR parallel manipulator (PM) as a remote center-of-motion (RCM) mechanism for percutaneous interventions. While a methodology for solving the Direct Geometric Model (DGM) and Inverse Geometric Model (IGM) has been previously introduced, to the best of our knowledge, the mobility analysis and kinematic modeling of the URRR-URR PM have not been explored in the literature yet. This paper provides a comprehensive mobility analysis using screw theory, coupled with a detailed kinematic model. By examining the forward and inverse Jacobian matrices derived from the kinematic model, this study also identifies configurations in which the mechanism encounters singularities. Additionally, the design problem of the PM is formulated as a bi-objective optimization problem. The first objective function is based on its kinetostatic performance index for each pose of the moving platform (MP) within the cone-shaped workspace. The second objective function amounts to the mechanism size. Furthermore, the non-dominated Pareto-optimal solutions are obtained and

<figure><img src="image_4.png" /><figcaption>Figure 3 (a) URRR-URR PM with its main design parameters and (b) frames attached to each universal joint.</figcaption></figure>

three Pareto-optimal solutions are illustrated.

## 2 Parametrization of the mechanism under study

The Remote Center-of-Motion (RCM) and the origin of frame $\mathcal{F}_O$ are both located at point $O$ (Fig. 3(a)). The mechanism is composed of two limbs, each with a universal joint at point $A_i$. This universal joint (Fig. 3(b)) consists of the first two joint axes for each limb. The first joint axis is parallel to $\overrightarrow{OA_i}$ and is along the axes $x_{i0}$ and $x_{i1}$, where $i = 1, 2$ denotes each limb. The second joint axis aligns with $y_{i1}$ and $y_{i2}$. The axes of the second, third (at point $B_i$), and fourth (at point $C_i$) revolute joints are parallel to one another, while the axis of the first revolute joint is orthogonal to that of the second. Consequently, the fourth and fifth revolute joint axes are orthogonal to each other. This configuration results in a URRR-URR. As previously stated, screw theory revealed that the MP exhibits a 1T2R-motion type. The MP is the link connecting points $C_2$ and $D_1$. The tool, or puncture instrument in the application, is rigidly linked to the MP. Three joints are actuated: the first two revolute joints of the first limb, and the first revolute joint of the second limb.

Figures 3(a) and 3(b) show the design parameters and variables of the URRR-URR PM. In these figures, $r_B$ represents the distance from point $O$ to point $A_i$. $\alpha_i$ represents the angle between axis $x_O$ and axis $x_{i0}$. Additionally, the lengths of the proximal and distal links in each limb are denoted by $l_1$ (link $A_i B_i$) and $l_2$ (link $B_i C_i$), respectively. Lastly, $l_3$ and $l_4$ represent the lengths of the links $C_1 D_1$ and $C_2 D_1$, respectively.

The Moving Platform's position is defined by the task-space variables. Its location (Fig. 4(a)) is represented by the Euclidean distance $d$ from point $O$ to point $D_1$ associated to the Moving Platform, as well as the azimuth angle $\phi$ and pitch angle $\theta$. The tool's orientation is defined by the unit vector $\mathbf{u}$, specifically the
<figure><img src="image_5.png" /><figcaption>Figure 4 (a) Parametrization of the tool and (b) definition of plane $\Pi_i$.</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>Figure 5 Vector definition of the URRR-URR PM.</figcaption></figure>

unit vector of vector $\overrightarrow{OD_1}$. The actuated angles are: $\theta_{11}$, $\theta_{12}$, and $\theta_{21}$. In Fig. 3(b), $\theta_{i1}$ represents the rotation angle around $x_{i0}$, the angle between $y_{i0}$ and $y_{i1}$, and the angle between $z_{i0}$ and $z_{i1}$. $\theta_{12}$ represents the rotation angle around $y_{11}$ in the first limb, as well as the angle between $x_{11}$ and $x_{12}$, and the one between $z_{11}$ and $z_{12}$. Each limb is in the plane $\Pi_i$ of normal $n_i$ and rotating around the line ($OA_i$), as illustrated in Fig. 4(b).

## 3 Mobility analysis

Screw theory is suitable for both the synthesis and analysis of the motion of parallel manipulators [19]. A twist represents the instantaneous motion of a rigid body, while a wrench represents the forces and moments applied to it.

### 3.1 Limb twist system.
The mechanism under study consists of two non-identical limbs, and for this reason, it is necessary to analyze the twist and constraint wrench system for each limb individually. The unit vectors of the joint axes of the mechanism are shown in Fig. 5. In Fig. 6 the twist system of the PM under study is defined by the span of the five zero-pitch twists associated with the five revolute joints in the first limb. In a non-singular configuration, the first limb twist system is a 5-system defined as follows:

$$ \mathcal{T}^1 = \operatorname{span} (\hat{\epsilon}_{01}^1, \hat{\epsilon}_{02}^1, \hat{\epsilon}_{03}^1, \hat{\epsilon}_{04}^1, \hat{\epsilon}_{05}^1) \quad (1) $$

with,

<figure><img src="image_7.png" /><figcaption>Figure 6 The zero-pitch twists associated with the revolute joints of the URRR-URR PM.</figcaption></figure>

$$ \hat{\epsilon}_{01}^1 = \left[ \overrightarrow{e_{11}} \right], \quad \hat{\epsilon}_{02}^1 = \left[ \overrightarrow{e_{12}} \right], \quad (2) $$

$$ \hat{\epsilon}_{03}^1 = \left[ \overrightarrow{e_{13}} \right], \quad \hat{\epsilon}_{04}^1 = \left[ \overrightarrow{e_{14}} \right], \quad \hat{\epsilon}_{05}^1 = \left[ \overrightarrow{e_{15}} \right] \quad (3) $$

Vectors $e_{12}$, $e_{13}$, and $e_{14}$ are parallel to each other (as shown in Fig. 5). Similarly, the second limb twist system is defined by the following 4-system:

$$ \mathcal{T}^2 = \operatorname{span} (\hat{\epsilon}_{01}^2, \hat{\epsilon}_{02}^2, \hat{\epsilon}_{03}^2, \hat{\epsilon}_{04}^2) \quad (3) $$

with,

$$ \hat{\epsilon}_{01}^2 = \left[ \overrightarrow{e_{21}} \right], \quad \hat{\epsilon}_{02}^2 = \left[ \overrightarrow{e_{22}} \right], \quad (4) $$

$$ \hat{\epsilon}_{03}^2 = \left[ \overrightarrow{e_{23}} \right], \quad \hat{\epsilon}_{04}^2 = \left[ \overrightarrow{e_{24}} \right] $$

Likewise, vectors $e_{22}$, $e_{23}$, and $e_{24}$ are parallel to each other.

### 3.2 Limb constraint wrench system.
A limb constraint wrench is reciprocal to all twists within the limb's twist system, according to the reciprocity conditions, which states that two zero-pitch screws are reciprocal if they are coplanar. The constraint wrench of the first limb, must intersect all zero-pitch twists defined in Eq. (2). Therefore, a zero-pitch wrench, i.e. a pure force, can be found that is reciprocal to the five zero-pitch twists and it passes through point O of unit vector $e_{12}$. This pure force is along the line $L_{c1}$ denoted in Fig. 5. This defines the following zero-pitch wrench:

$$ \tau_{01}^{c1} = \left[ \overrightarrow{e_{12}} \right] \quad (5) $$

This implies that a constraint force parallel to vector $e_{12}$ is exerted at point O, preventing the MP from translating along the line $L_{c1}$. This defines the constraint wrench system for the first limb:

$$ W_c^1 = \operatorname{span} (\tau_{01}^{c1}) \quad (6) $$
<figure><img src="image_8.png" /><figcaption>Figure 7 Constraint wrench system of the URRR-URR PM.</figcaption></figure>

Similarly to the first limb, it is possible to identify a constraint wrench in the second limb that intersects the zero-pitch twists defined in Eq. (4). A zero-pitch wrench, or pure force, intersects the four zero-pitch twists passing through point O of unit vector **e**<sub>22</sub>. This wrench is along the line L<sub>c2</sub> shown in Fig. 5. Then, the constraint wrench is defined as:

$$ \tau_{01}^{c2} = \left[ \overrightarrow{D_1 O \times e_{22}} \right] \qquad (7) $$

Consequently, a force parallel to vector **e**<sub>22</sub> is exerted on the PM at point O preventing a translation in the same direction of the vector. Furthermore, according to the reciprocity conditions, an infinite-pitch screw is reciprocal to a zero-pitch screw if they are orthogonal. Knowing that vectors **e**<sub>22</sub>, **e**<sub>23</sub>, and **e**<sub>24</sub> are parallel to each other, an infinite-pitch wrench orthogonal to both **e**<sub>21</sub> and **e**<sub>22</sub> can be defined. For this reason, an infinite-pitch wrench, i.e. a pure moment, is exerted on the MP preventing it from rotating about any axis of direction **e**<sub>21</sub> × **e**<sub>22</sub>. The infinite-pitch wrench is defined as follows:

$$ \tau_{\infty 2}^{c2} = \left[ \mathbf{0}_3 \middle| \mathbf{e}_{21} \times \mathbf{e}_{22} \right] \qquad (8) $$

Therefore, the second limb wrench system is the span of both wrenches, namely,

$$ W_c^2 = \operatorname{span} (\tau_{01}^{c2}, \tau_{\infty 2}^{c2}) \qquad (9) $$

**3.3 Constraint wrench system.** The constraint wrench system W<sub>c</sub> of the mechanism (Fig. 7) is then the linear combination of the two limb constraint wrench systems, as defined in Eq. (6) and Eq. (9). W<sub>c</sub> is a 3-system as long as the mechanism does not meet a constraint singularity.

$$ W_c = \bigoplus_{i=1}^{2} W_c^i = \operatorname{span} (\tau_{01}^{c1}, \tau_{01}^{c2}, \tau_{\infty 2}^{c2}) \qquad (10) $$

If the mechanism does not meet a singular configuration, the constraint wrench system means that the end-effector cannot translate along the lines L<sub>c1</sub> and L<sub>c2</sub> (shown in Fig. 5) at point O, and cannot rotate about any axis of direction **e**<sub>21</sub> × **e**<sub>22</sub>.

<figure><img src="image_9.png" /><figcaption>Figure 8 MP twist system of the URRR-URR PM.</figcaption></figure>

**3.4 Twist system of the moving platform.** The twist system of the MP is defined by the span of all the twists which are reciprocal to the constraint wrench system, expressed in Eq. (10). The constraint wrench τ<sub>∞2</sub><sup>c2</sup> was defined by the cross product of two vectors. This allows for the definition of two zero-pitch twists which are always orthogonal, therefore reciprocal, to this wrench and parallel to vectors **e**<sub>21</sub> and **e**<sub>22</sub>, respectively. Constraint wrenches τ<sub>01</sub><sup>c1</sup> and τ<sub>01</sub><sup>c2</sup> were defined at point O. The MP zero-pitch twists can thus be defined here as well to guarantee they are always coplanar, and thus reciprocal:

$$ \hat{\epsilon}_{01}^{MP} = \left[ \overrightarrow{e_{21}} \middle| \overrightarrow{D_1 O \times e_{21}} \right] \qquad (11) $$

$$ \hat{\epsilon}_{02}^{MP} = \left[ \overrightarrow{e_{22}} \middle| \overrightarrow{D_1 O \times e_{22}} \right] \qquad (12) $$

From Eq. (11) the MP can rotate about the line L<sub>21</sub>, illustrated in Fig. 5, at point O. Moreover, from Eq. (12) the MP can rotate about the line L<sub>c2</sub> at point O. According to the reciprocity conditions, two infinite-pitch screws are always reciprocal to each other. Therefore, the infinite-pitch twist $\hat{\epsilon}_{\infty 3}^{MP}$ is reciprocal to both constraint wrenches $\tau_{01}^{c1}$ and $\tau_{01}^{c2}$ expressed in Eq. (5) and Eq. (7), and takes the form:

$$ \hat{\epsilon}_{\infty 3}^{MP} = \left[ \mathbf{0}_3 \middle| \mathbf{e}_{12} \times \mathbf{e}_{22} \right] \qquad (13) $$

The MP can translate along the direction of the tool $\overrightarrow{OD_1}$. As long as the mechanism does not meet a singular configuration, the twist system of the MP (Fig. 8) is a 3-system which defines a 1T2R-motion type.

$$ \mathcal{T} = W_c^{\perp} = \operatorname{span} (\hat{\epsilon}_{01}^{MP}, \hat{\epsilon}_{02}^{MP}, \hat{\epsilon}_{\infty 3}^{MP}) \qquad (14) $$

**3.5 Actuation wrench system.** For the actuation wrench system, there are 3 actuated joints: the first and second revolute axes of the first limb along vectors **e**<sub>11</sub> and **e**<sub>12</sub>, respectively; and the first revolute joint of the second limb along vector **e**<sub>21</sub>. All other revolute joints are considered to be passive joints.

When the first revolute axis of the first limb, i.e. $\theta_{11}$, is blocked, there is a pure force along the line of unit vector **e**<sub>12</sub> passing through point D<sub>1</sub>. A zero-pitch actuation wrench is then defined as:

$$ \tau_{0a_1}^{1} = \left[ \mathbf{e}_{12} \middle| \mathbf{0}_3 \right] \qquad (15) $$
<figure><img src="image_10.png" /><figcaption>Figure 9 Planes defining the actuation wrench for $\theta_{12}$.</figcaption></figure>

For the second revolute axis, i.e. $\theta_{12}$, the intersection of the planes formed by the first and fifth revolute axes in the first limb (plane $\Pi_1$), and the third and fourth revolute axes (plane $\Pi_{12}$) must be inspected (Fig. 9). This is due to the fact that, the corresponding limb will always lie in the plane $\Pi_1$ defined by the actuation of the angle $\theta_{11}$. In addition, actuating angle $\theta_{12}$ will cause the orientation of plane $\Pi_{12}$ to change. The plane $\Pi_1$ is defined at point $D_1$ with the normal defined by the cross product $\mathbf{e}_{11} \times \mathbf{e}_{15}$.

$$ \Pi_1 (D_1, \mathbf{e}_{11} \times \mathbf{e}_{15}) \quad (16) $$

As mentioned, its normal $\mathbf{n}_1$ is:

$$ \mathbf{n}_1 = \mathbf{e}_{11} \times \mathbf{e}_{15} \quad (17) $$

Plane $\Pi_{12}$ is defined at point $C_1$ by vector $\mathbf{e}_{13}$ and a unit vector $\mathbf{f}$ crossing joint axes 3 and 4, that is, $\mathbf{e}_{13}$ and $\mathbf{e}_{14}$.

$$ \Pi_{12} (C_1, \mathbf{e}_{13} \times \mathbf{f}) \quad (18) $$

$$ \mathbf{f} = \frac{\overrightarrow{B_1 C_1}}{\|\overrightarrow{B_1 C_1}\|_2} \quad (19) $$

Its normal $\mathbf{n}_{12}$ is,

$$ \mathbf{n}_{12} = \mathbf{e}_{13} \times \mathbf{f} \quad (20) $$

The intersection of these two planes, defined here as $\mathcal{L} = \Pi_1 \cap \Pi_{12}$, passes through point $C_1$ and is along $\mathbf{n}_1 \times \mathbf{n}_{12}$.

$$ \mathcal{L} (C_1, \mathbf{n}_1 \times \mathbf{n}_{12}) \quad (21) $$

Upon further inspection, the cross product of the two normals can be simplified:

$$ \begin{aligned} \mathbf{n}_1 \times \mathbf{n}_{12} &= (\mathbf{e}_{11} \times \mathbf{e}_{15}) \times (\mathbf{e}_{13} \times \mathbf{f}) \\ &= \mathbf{e}_{13} \times (\mathbf{e}_{13} \times \mathbf{f}) \quad (22) \\ &= \mathbf{f} \end{aligned} $$

The intersection of the two planes, that is line $\mathcal{L}$, lies along the direction of vector $\mathbf{f}$. It means that the effect of the actuation of the second revolute joint in the first limb is a pure force along the line of unit vector $\mathbf{f}$ and passing through point $C_1$. Therefore, the actuation wrench obtained by blocking actuation angle $\theta_{12}$ is defined as,

$$ \tau_{0a_2}^1 = \left[ \frac{\mathbf{f}}{D_1 C_1 \times \mathbf{f}} \right] \quad (23) $$

<figure><img src="image_11.png" /><figcaption>Figure 10 Actuation wrench system of the URRR-URR PM.</figcaption></figure>

with $\mathcal{W}_a^1$ being the actuation wrench of the first limb:

$$ \mathcal{W}_a^1 = \operatorname{span} (\tau_{0a_1}^1, \tau_{0a_2}^1) \quad (24) $$

Similarly as when the actuation angle $\theta_{11}$ is blocked, the effect of the actuation of the first revolute joint in the second limb, i.e. $\theta_{21}$, is a pure force along the line of unit vector $\mathbf{e}_{22}$ passing through point $C_2$. Thus, the following actuation wrench is obtained:

$$ \tau_{0a_1}^2 = \left[ \frac{\mathbf{e}_{22}}{D_1 C_2 \times \mathbf{e}_{22}} \right] \quad (25) $$

with $\mathcal{W}_a^2$ being the actuation wrench for the second limb:

$$ \mathcal{W}_a^2 = \operatorname{span} (\tau_{0a_1}^2) \quad (26) $$

The complete actuation wrench is the linear combination of the three actuation wrenches defined in Eq. (15), Eq. (23), and Eq. (25). The actuation wrench system of the PM $\mathcal{W}_a$ (Fig. 10) is a 3-system when the mechanism is in a non-singular configuration.

$$ \mathcal{W}_a = \operatorname{span} (\tau_{0a_1}^1, \tau_{0a_2}^1, \tau_{0a_3}^2) \quad (27) $$

**3.6 Global wrench system.** The global wrench system is the combination of the actuation wrench $\mathcal{W}_a$ and the constraint wrench $\mathcal{W}_c$ defined in Eq. (27) and Eq. (10), respectively. $\mathcal{W}_G$ is a 6-system if the mechanism does not meet any singularity.

$$ \mathcal{W}_G = \mathcal{W}_a \oplus \mathcal{W}_c \quad (28) $$

$$ \mathcal{W}_G = \operatorname{span} (\tau_{0a_1}^1, \tau_{0a_2}^1, \tau_{0a_3}^2, \tau_{01}^{c1}, \tau_{01}^{c2}, \tau_{\infty 2}^{c2}) \quad (29) $$

# 4 Geometric Modeling

## 4.1 Direct Geometric Modeling.
The Direct Geometric Model (DGM) of the mechanism uses inputs from actuated joints variables to generate the Moving Platform (MP) position represented by the task-space variables (the Euclidean distance $d$, the azimuth angle $\phi$, and pitch angle $\theta$). The methodology for deriving the DGM of the URRR-URR parallel mechanism, presented in this work, has been previously introduced in [17] and is reiterated here for completeness.
<figure><img src="image_12.png" /><figcaption>Figure 11 Two solutions of the URRR-URR PM to its direct geometric model for given arbitrary input angles $\theta_{11} = 20^{\circ}$, $\theta_{12} = 4^{\circ}$, and $\theta_{21} = 10^{\circ}$.</figcaption></figure>

The origin of frame $\mathcal{F}_O$ is located at point $O$ (Fig. 3(a)). The distance $r_B$ and rotation angle $\alpha_i$ reflect the position of point $A_i$, which is fixed with respect to frame $\mathcal{F}_O$. In Eq. (30), $\mathbf{a}_i$ denotes the position vector of point $A_i$. Then, with $\mathbf{a}_1$, the actuation angles $\theta_{11}$ and $\theta_{12}$, and knowing that axis $z_{12}$ rotates with the actuation of angle $\theta_{12}$, it is possible to obtain the position vector $\mathbf{b}_1$ w.r.t. $\mathcal{F}_O$.

$$ \mathbf{a}_i = \begin{bmatrix} r_B \cos \alpha_i \\ r_B \sin \alpha_i \\ 0 \end{bmatrix} \qquad (30) $$

As previously mentioned, each limb lies within the plane $\Pi_i$ and the normal $\mathbf{n}_i$ of each plane is parallel to axis $y_{i1}$ in frame $\mathcal{F}_{i1}$. Thus, $\mathbf{n}_i$ is parallel to the second, third, and fourth joint axes in limb $i$ for $i = 1, 2$. The equation for plane $\Pi_i$ is expressed as follows:

$$ \Pi_i (A_i, \mathbf{n}_i) \Rightarrow (-\sin \alpha_i \cos \theta_{i1}) x + \dots \\ (\cos \alpha_i \cos \theta_{i1}) y + (\sin \theta_{i1}) z = 0 \qquad (31) $$

The puncture tool corresponds to the intersecting line of planes $\Pi_1$ and $\Pi_2$, and its orientation is defined by the unit vector $\mathbf{u}$ (Fig. 4(b)). This intersection line crosses through point $D_1$. To get the Cartesian coordinates of point $D_1$, first the position vector $\mathbf{c}_1$ of point $C_1$ must be located. This is done by moving line $\mathcal{L}_1$ by a distance $l_3$ along the vector normal to both vectors $\mathbf{u}$ and $\mathbf{n}_1$, resulting in line $\mathcal{L}_2$ (as shown in the same Fig. 4(b)):

$$ \mathcal{L}_2 = \mathbf{o} + l_3 (\mathbf{u} \times \mathbf{n}_1) + \mathbf{r}\mathbf{u} \qquad (32) $$

Here, $\mathbf{o}$ denotes the position vector of point $O$. A sphere of radius $l_2$ is created to represent the connection linking points $B_1$ and $C_1$, with the center at $B_1$:

$$ S_{12}(B_1, l_2) \Rightarrow (x - b_{1x})^2 + (y - b_{1y})^2 + (z - b_{1z})^2 = l_2^2 \qquad (33) $$

The intersection of this sphere and line $\mathcal{L}_2$ expressed in Eq. (32), defines the possible positions for point $C_1$:

$$ C_1 \equiv S_{12} \cap \mathcal{L}_2 \qquad (34) $$

To locate point $C_1$, Eq. (32) and Eq. (33) are used to calculate the line parameter $t$. This will result in at most two solutions. Substituting those values into Eq. (32) produces the position vector $\mathbf{c}_1$. Finally, the position vector $\mathbf{d}_1$ of point $D_1$ is determined as follows:

$$ \mathbf{d}_1 = \mathbf{c}_1 + l_3 (\mathbf{n}_1 \times \mathbf{u}) \qquad (35) $$

The MP, defined by parameters $d$, $\theta$, and $\phi$, is then determined to represent its pose, as illustrated in Fig. 4(a). Figure 11 depicts the URRR-URR PM two assembly modes for an actuated set of arbitrary input angles.

<figure><img src="image_13.png" /><figcaption>Figure 12 Determination of the possible locations of $B_i$.</figcaption></figure>

## 4.2 Inverse Geometric Modeling.
The Inverse Geometric Model (IGM) of the mechanism takes as input the task-space variables defining the pose of the MP, and computes the joint-space variables $\theta_{11}$, $\theta_{12}$, and $\theta_{21}$ required to achieve that pose. The methodology for deriving the IGM has also been previously introduced in [17] but is reiterated here for clarity.

First, a vector specifying the tool's orientation is computed. Then, to obtain the position of point $D_1$, this vector is multiplied by the distance $d$.

$$ \mathbf{d}_1 = d \begin{bmatrix} \sin \theta \cos \phi \\ \sin \theta \sin \phi \\ \cos \theta \end{bmatrix} = d\mathbf{u} \qquad (36) $$

with,

$$ \mathbf{u} = \frac{\overrightarrow{OD_1}}{\|\overrightarrow{OD_1}\|_2} \qquad (37) $$

The normal vectors $\mathbf{n}_i$ are obtained from the orientation vector $\mathbf{u}$ and the fixed position of point $A_i$. The equations for planes $\Pi_1$ and $\Pi_2$ are given as follows:

$$ \Pi_i (A_i, \mathbf{n}_i) \Rightarrow n_{ix}x + n_{iy}y + n_{iz}z = 0 \qquad (38) $$

where, $n_{ix}$, $n_{iy}$, and $n_{iz}$ are the components of vector $\mathbf{n}_i$. The Cartesian coordinates vector of point $C_1$ is defined from those of point $D_1$ as follows:

$$ \mathbf{c}_1 = \mathbf{d}_1 + l_3 (\mathbf{n}_1 \times \mathbf{u}) \qquad (39) $$

In order to identify the various solutions for point $B_i$, two circles lying in the plane $\Pi_i$ (Fig. 12) are defined. Their intersection provides the Cartesian coordinates of points $B_{ij}$, where $i = 1, 2$ and $j = 1, 2$. The circle $C_{i1}$ is centered at point $A_i$ and has a radius of distance $l_1$, which represents the link length between points $A_i$ and $B_i$. The connection length between points $B_i$ and $C_i$ is represented by the circle $C_{i2}$, centered at $C_i$. The angle $\beta_i$ represents the angle between $\overrightarrow{A_iC_{i1}}$ and $\overrightarrow{A_iC_{i2}}$. The link length $l_2$ is the opposite of the angle $\beta_i$. The triangle $A_iB_{ij}C_i$ is defined by the lengths of the segments $A_iC_i$ and $A_iB_i$, as well as the link length $l_2$. Thus, the law of cosines is used to calculate the angle $\beta_i$:

$$ \cos \beta_i = \frac{l_1^2 + \|\overrightarrow{A_iC_i}\|_2^2 - l_2^2}{2l_1 \|\overrightarrow{A_iC_i}\|_2} \qquad (40) $$

The distance $A_iH_i$ is determined using the connection length $l_1$ and the angle $\beta_i$ previously calculated:

$$ A_iH_i = l_1 \cos \beta_i \qquad (41) $$
Using the Pythagorean theorem, the distance $H_i B_i$ is calculated and the right triangle $A_i H_i B_{ij}$ is created.

$$H_i B_i = \sqrt{l_i^2 - A_i H_i^2} \quad (42)$$

In addition, two unit vectors are defined: $\mathbf{v}_i$ is parallel to $\overrightarrow{A_i C_i}$, and $\mathbf{w}_i$ is orthogonal to both $\mathbf{v}_i$ and $\mathbf{n}_i$.

$$\mathbf{v}_i = \frac{\overrightarrow{A_i C_i}}{\|\overrightarrow{A_i C_i}\|_2} \quad (43)$$

$$\mathbf{w}_i = \frac{\mathbf{n}_i \times \mathbf{v}_i}{\|\mathbf{n}_i \times \mathbf{v}_i\|_2} \quad (44)$$

The position vector $\mathbf{b}_{ij}$, $i = 1, 2$, $j = 1, 2$, is then calculated with the position vector $\mathbf{a}_i$, length $A_i H_i$ with the direction vector $\mathbf{v}_i$, and distance $H_i B_i$ with the direction vector $\mathbf{w}_i$:

$$\mathbf{b}_{ij} = \mathbf{a}_i + A_i H_i \mathbf{v}_i \pm H_i B_i \mathbf{w}_i \quad (45)$$

The Cartesian coordinates of points $B_{ij}$, $i = 1, 2$, $j = 1, 2$, is then used to derive the actuated joint angles $\theta_{11}$, $\theta_{12}$, and $\theta_{21}$. According to Eq. (45), the inverse geometric model of the URRR-URR PM can have up to four solutions, namely four working modes.

# 5 Kinematic Modeling

In this section, the kinematic Jacobian matrices of the mechanism are derived from the twists and wrenches defined in Sec. 3.

A twist defines the linear and angular velocities of the end-effector. As this mechanism is not an Identical Limb Structure (ILS) [19] both of its limbs must be analyzed separately. The MP twist is obtained with the sum of the products of each element of the limb twist system with its corresponding velocity of the joint defining the twist:

$$\mathbf{t} = \begin{bmatrix} \omega \\ \dot{\mathbf{d}}_1 \end{bmatrix} = \sum_{j=1}^{n} \hat{\epsilon}_{0j}^i \dot{\theta}_{ij} \quad (46)$$

## 5.1 Reciprocal products of actuation wrenches and constraints with MP twist.
Previously, two actuation wrenches had been defined for the first limb: $\tau_{0a}^1$ and $\tau_{0a_2}^1$, expressed in Eq. (15) and Eq. (23), respectively. The reciprocal product of $\tau_{0a}^1$ and the twist $\mathbf{t}$ defined in Eq. (46), yields:

$$\begin{align*}
\tau_{0a_1}^1 \circ \mathbf{t} &= \tau_{0a_1}^1 \circ \hat{\epsilon}_{01}^1 \dot{\theta}_{11} \\
&= [\mathbf{0}_3^T \quad \mathbf{e}_{12}^T] \left[ \frac{\mathbf{e}_{11}}{D_1 A_1 \times \mathbf{e}_{11}} \right] \dot{\theta}_{11} \quad (47) \\
&= (\mathbf{e}_{11} \times \mathbf{e}_{12})^T (\mathbf{a}_1 - \mathbf{d}_1) \dot{\theta}_{11}
\end{align*}$$

Meanwhile, for the second actuation wrench of the first limb $\tau_{0a_2}^1$ the following is derived:

$$\begin{align*}
\tau_{0a_2}^1 \circ \mathbf{t} &= \tau_{0a_2}^1 \circ \hat{\epsilon}_{02}^1 \dot{\theta}_{12} \\
&= \left[ \left( \overrightarrow{D_1 C_1} \times \mathbf{f} \right)^T \quad \mathbf{f}^T \right] \left[ \frac{\mathbf{e}_{12}}{\overrightarrow{D_1 A_1} \times \mathbf{e}_{12}} \right] \dot{\theta}_{12} \quad (48) \\
&= (\mathbf{f} \times \mathbf{e}_{12})^T (\mathbf{c}_1 - \mathbf{a}_1) \dot{\theta}_{12}
\end{align*}$$

In the second limb, since only one joint is actuated, there is a single actuation wrench $\tau_{0a_1}^2$, as defined in Eq. (25):

$$\begin{align*}
\tau_{0a_1}^2 \circ \mathbf{t} &= \tau_{0a_1}^2 \circ \hat{\epsilon}_{01}^2 \dot{\theta}_{21} \\
&= \left[ \left( \overrightarrow{D_1 C_2} \times \mathbf{e}_{22} \right)^T \quad \mathbf{e}_{22}^T \right] \left[ \frac{\mathbf{e}_{21}}{\overrightarrow{D_1 A_2} \times \mathbf{e}_{21}} \right] \dot{\theta}_{21} \quad (49) \\
&= (\mathbf{e}_{21} \times \mathbf{e}_{22})^T (\mathbf{a}_2 - \mathbf{c}_2) \dot{\theta}_{21}
\end{align*}$$

Lastly, the reciprocal product between constraints, defined in Eq. (10), and the MP twist always yields a zero value, as they are obtained specifically to be reciprocal to each other.

$$\tau_{01}^{c1} \circ \mathbf{t} = [(-\mathbf{d}_1 \times \mathbf{e}_{12})^T \quad \mathbf{e}_{12}^T] \circ \mathbf{t} = 0 \quad (50)$$

$$\tau_{01}^{c2} \circ \mathbf{t} = [(-\mathbf{d}_1 \times \mathbf{e}_{22})^T \quad \mathbf{e}_{22}^T] \circ \mathbf{t} = 0 \quad (51)$$

$$\tau_{\infty}^{c2} \circ \mathbf{t} = [(\mathbf{e}_{21} \times \mathbf{e}_{22})^T \quad \mathbf{0}_3^T] \circ \mathbf{t} = 0 \quad (52)$$

## 5.2 Jacobian matrices.
The relationship between the actuated joint velocities and the MP twist is expressed, in terms of the forward and inverse Jacobian, as follows:

$$\mathbf{A} \circ \mathbf{t} = \mathbf{B} \dot{\mathbf{\theta}} \quad (53)$$

The forward kinematic Jacobian matrix $\mathbf{A}$ is defined as the following $(6 \times 6)$ matrix:

$$\mathbf{A} = \begin{bmatrix}
\mathbf{0}_3^T & \mathbf{e}_{12}^T \\
[ (\mathbf{c}_1 - \mathbf{d}_1) \times \mathbf{f} ]^T & \mathbf{f}^T \\
[ (\mathbf{c}_2 - \mathbf{d}_1) \times \mathbf{e}_{22} ]^T & \mathbf{e}_{22}^T \\
(\mathbf{-d}_1 \times \mathbf{e}_{12})^T & \mathbf{e}_{12}^T \\
(\mathbf{-d}_1 \times \mathbf{e}_{22})^T & \mathbf{e}_{22}^T \\
(\mathbf{e}_{21} \times \mathbf{e}_{22})^T & \mathbf{0}_3^T
\end{bmatrix} \quad (54)$$

The inverse kinematic Jacobian matrix $\mathbf{B}$ is defined by the following $(6 \times 3)$ matrix:

$$\mathbf{B} = \begin{bmatrix}
(\mathbf{e}_{11} \times \mathbf{e}_{12})^T (\mathbf{a}_1 - \mathbf{d}_1) & 0 & 0 \\
0 & (\mathbf{f} \times \mathbf{e}_{12})^T (\mathbf{c}_1 - \mathbf{a}_1) & 0 \\
0 & 0 & (\mathbf{e}_{21} \times \mathbf{e}_{22})^T (\mathbf{a}_2 - \mathbf{c}_2) \\
0 & 0 & 0 \\
0 & 0 & 0 \\
0 & 0 & 0
\end{bmatrix} \quad (55)$$
<figure><img src="image_14.png" /><figcaption>Figure 13 Parallel and serial singularity when point D₁ coincides with point O along $\overrightarrow{OA₁}$ and point C₂ lies along $\overrightarrow{OA₂}$.</figcaption></figure>

<figure><img src="image_15.png" /><figcaption>Figure 14 Parallel singularity when $e_{12}$ is parallel to $e_{22}$.</figcaption></figure>

The actuated joint velocity vector $\dot{\theta}$ comprises the velocities of the three actuated joints of the PM:

$$ \dot{\theta} = \begin{bmatrix} \dot{\theta}_{11} \\ \dot{\theta}_{12} \\ \dot{\theta}_{21} \end{bmatrix} \qquad (56) $$

### 5.3 Singularity analysis.
The parallel manipulator meets a singularity when matrix A and/or matrix B becomes rank deficient. When the forward Jacobian A is rank deficient, the manipulator meets a parallel singularity. From Eq. (54) it can be observed that the matrix becomes rank-deficient in the following cases:

* Point $D₁$ coincides with point O (Fig. 13). This configuration may not necessarily affect the computation of the inverse geometric model, since although the distance parameter d becomes zero, the vector defining the tool orientation remains well-defined.

* Vector $\overrightarrow{D₁O}$ is parallel to vector $\overrightarrow{D₁C₂}$.

* Vector $e_{12}$ is parallel to vector $e_{22}$. This particular condition can only appear in two cases: when both limbs overlap such that $\alpha₁ = \alpha₂ = 90°$ (which is not a feasible solution), and when the mechanism is fully opened such that $\alpha₁ = 180°$ and $\alpha₂ = 0°$ (Fig. 14).

When the inverse Jacobian B is rank deficient, the manipulator meets a serial singularity. From Eq. (55) it can be easily seen that the matrix is rank deficient when:

* Vector $\overrightarrow{D₁A₁}$ is parallel to vector $e_{11}$. This condition arises when point $D₁$ lies along the line $L₁₁$ (along $\overrightarrow{OA₁}$) as depicted in Fig. 5; particularly in the case where point $D₁$ coincides with point O (Fig. 13).

<figure><img src="image_16.png" /><figcaption>Figure 15 Serial singularity when limb 1 is fully extended such that $A₁C₁$ is parallel to $B₁C₁$.</figcaption></figure>

* Vector $\overrightarrow{A₁C₁}$ is parallel to vector $\mathbf{f} = \overrightarrow{B₁C₁}$. This configuration can only be achieved by extending the links $l₁$ and $l₂$ (Fig. 15).

* Vector $\overrightarrow{C₂A₂}$ is parallel to vector $e_{21}$. For this condition, point $C₂$ must lie along the line $L₂₁$ (along $\overrightarrow{OA₂}$) shown in Fig. 5. This condition is also met when point $D₁$ coincides with point O (Fig. 13).

## 6 Task-based design and kinetostatic performance analysis

To perform the intended task of the designed parallel mechanism, a cone-shaped regular workspace has been defined with a total height of 30 cm and an apex angle of 60°. From the workspace variables, the cone is discretized with the following limits: $-30° \le \theta \le 30°$, $-\pi \le \phi \le \pi$, and $0 m \le d \le 0.3 m$. To determine the possible set of design variables that can achieve the desired task, the design problem is formulated as a bi-objective optimization problem.

### 6.1 Kinetostatic performance.
When parallel manipulators are close to a parallel singularity they tend to lose their stiffness, thus becoming uncontrollable, along with their quality of payload capability. The most common performance indexes used to characterize this loss of motion transmission is with the condition number of the Jacobian, or the dexterity index [20–22]. Whenever a manipulator reaches an isotropic posture, its condition number has a value of 1. Meanwhile, when this number tends to infinity, the manipulator is badly conditioned as it has reached a singularity.

Two dexterity values are considered. As seen in the previous section, both forward and inverse Jacobian matrices can reach singular configurations for different reasons. As a consequence, this raises the need to analyze both independently. The condition number of the forward Jacobian A is considered as well as the condition number of the inverse Jacobian B. Indeed, Eq. (54) includes terms which are in meter units; it is important to normalize lengths to calculate an appropriate condition number. The normalized forward Jacobian is denoted as matrix $A_n$. Thus, $v₁$ represents the inverse of the condition number of the normalized matrix $A_n$:

$$ v_1 = \frac{1}{\kappa(A_n)}, \quad 0 \le v_1 \le 1 \qquad (57) $$

As for the inverse Jacobian matrix B, only the upper section will be considered as the constraint wrenches do not play a part
in the joint velocities. This reduced inverse Jacobian matrix is denoted $\mathbf{B}_r$. Then, $v_2$ represents the inverse of the condition number of the reduced matrix $\mathbf{B}_r$:

$$v_2 = \frac{1}{\kappa(\mathbf{B}_r)}, 0 \le v_2 \le 1 \qquad (58)$$

In the ideal case, for the mechanism to reach an isotropic posture, the inverse of the condition number should also be equal to 1. If the mechanism is reaching a singularity, $v_1$ or $v_2$ will tend to zero.

**6.2 Optimization problem.** Using the design variables $l_1, l_2, l_3, l_4, r_B, \alpha_1$, and $\alpha_2$ two objective functions are considered with the limits expressed in the optimization problem (Eq. (61)). Before the optimization problem is considered, only those designs that can reach every single point within the cone-shaped workspace are taken into consideration. To achieve this, the inverse geometric model is used and Eq. (40) is checked to see if the mechanism can be assembled. If the condition $|\cos \beta_i| \le 1$ is satisfied, then the mechanism can be assembled in the desired MP pose. Then two objective functions are considered, $f_1$ considers the condition number of the forward and inverse Jacobian matrices within the regular workspace:

$$f_1 = \min(\bar{v}_1, \bar{v}_2) \qquad (59)$$

where $\bar{v}_1$ and $\bar{v}_2$ are the mean of $v_1$ and $v_2$ throughout the regular cone-shaped workspace, respectively. The second objective function $f_2$ denotes the ratio between the mechanism size and the sum of the maximum considered length values for each link:

$$f_2 = \frac{l_1 + l_2 + l_3 + r_B}{l_{1max} + l_{2max} + l_{3max} + r_{Bmax}} \qquad (60)$$

The design problem of the URRR-URR PM is formulated as follows:

maximize $f_1$

minimize $f_2$

over $\mathbf{x} = [l_1 \ l_2 \ l_3 \ l_4 \ r_B \ \alpha_1 \ \alpha_2]$

$$\begin{array}{ll} \text{s.t.} & 0.05 \text{ m} \le l_1 \le 0.3 \text{ m} \\ & 0.05 \text{ m} \le l_2 \le 0.3 \text{ m} \\ & 0.02 \text{ m} \le l_3 \le 0.2 \text{ m} \end{array} \qquad (61)$$

$$l_4 = l_3$$

$$0.1 \text{ m} \le r_B \le 0.6 \text{ m}$$

$$\frac{\pi}{2} \le \alpha_1 \le \pi$$

$$\alpha_2 = \pi - \alpha_1$$

**6.3 Pareto-optimal solutions.** Figure 16 represents the values of the objective functions corresponding to generated designs that are able to cover the regular cone-shaped workspace. The horizontal axis is considered as $1 - f_1$, meaning that a low value is now desired while a value of 1 indicates poor dexterity. The Pareto-optimal solutions (POS) are highlighted in red. Three non-dominated solutions are chosen represented by the three colored points: magenta (POS A), green (POS B), and light blue (POS C).

An example of a mechanism design corresponding to the magenta POS A is shown in Fig. 17. From the IGM calculation, this

<figure><img src="image_17.png" /><figcaption>Figure 16 Values of the objective functions associated with the generated designs in blue (+) and Pareto-optimal solutions (POS) in red (o).</figcaption></figure>

<table><caption>Table 1 Values of the design variables for three non-dominated Pareto Optimal Solutions.</caption><thead><tr><th>POS</th><th>$l_1$ [m]</th><th>$l_2$ [m]</th><th>$l_3$ [m]</th><th>$r_B$ [m]</th><th>$\alpha_1$ [°]</th><th>$\alpha_2$ [°]</th></tr></thead><tbody><tr><td>A</td><td>0.1816</td><td>0.1816</td><td>0.02</td><td>0.1</td><td>180</td><td>0</td></tr><tr><td>B</td><td>0.1816</td><td>0.1816</td><td>0.0958</td><td>0.1</td><td>137.37</td><td>42.63</td></tr><tr><td>C</td><td>0.1421</td><td>0.2211</td><td>0.1811</td><td>0.1</td><td>137.37</td><td>42.63</td></tr></tbody></table>

mechanism can be assembled for any pose within the desired cone-shaped workspace, as it is contained within the overall workspace, as illustrated in Fig. 17(a). However, based on its condition number, the mechanism is not controllable, as it operates continuously in a singular configuration. Indeed, every design with a value of $1 - f_1 = 1$ in Fig. 16, will always find itself in a singularity. These designs, show an example of an architectural singularity, therefore, this mechanism is not a feasible solution. From Tab. 1, this configuration shows that the two limbs are opposite to each other; given the fact that $\alpha_1 = 180^\circ$ and $\alpha_2 = 0^\circ$ which can be easily visualized in its CAD model (Fig. 17(c)). As demonstrated previously in the singularity analysis, two configurations for these two angles causes the PM to always be poorly conditioned, namely when vectors $\mathbf{e}_{12}$ and $\mathbf{e}_{22}$ are parallel to each other (Fig. 14). Moreover, Fig. 17(b) shows that it is poorly conditioned for every pose within the desired regular workspace, showing that these designs present an architectural singularity.

Figure 18 shows an example of the green POS B. The PM's workspace is shown in Fig. 18(a). While this mechanism is not as compact as the POS A, it presents a better condition number along its desired regular workspace as shown in Fig. 18(b). The design values represented in the figure are shown in Tab. 1 with the corresponding CAD model represented in Fig. 18(c).

Finally, Fig. 19 illustrates an example of the light blue POS C. This particular mechanism is the least compact of the three POS selected, while still being able to reach very single pose within the desired workspace as seen in Fig. 19(a). Nevertheless, it also presents the best condition number distribution along the cone-shaped workspace of the three. This can be easily seen in Fig. 19(b). Its design values are presented in Tab. 1 and the CAD model is depicted in Fig. 19(c).

As mentioned, POS A is not a feasible solution. While POS B presents a more compact mechanism than POS C, the latter presents a far better dexterity within the desired regular workspace. Hence, this leaves POS C as the best option for the intended task.

## 7 Conclusions

This paper dealt with the mobility, geometrical design, kinematic modeling, and singularity analysis of a URRR-URR parallel mechanism for percutaneous interventions. The presented
<figure><img src="image_18.png" /><figcaption>Figure 17 (a) Cartesian workspace, (b) distribution of the inverse of the condition number of the normalized forward Jacobian over the desired cone-shaped workspace, and (c) CAD design for POS A.</figcaption></figure>

<figure><img src="image_19.png" /><figcaption>Figure 18 (a) Cartesian workspace, (b) distribution of the inverse of the condition number of the normalized forward Jacobian over the desired cone-shaped workspace, and (c) CAD design for POS B.</figcaption></figure>

mechanism guarantees a Remote Center-of-Motion by its mechanical design. Using screw theory, its mobility was analyzed. Then, methodologies for solving both the Direct Geometric Model (DGM) and the Inverse Geometric Model (IGM) were introduced. Furthermore, the kinematic model of the parallel mechanism was derived and its singularity conditions were analyzed. A task-based design approach was implemented through an optimization problem, aiming to maximize the inverse of its condition number while minimizing the overall size of the mechanism. Non-dominated Pareto optimal solutions were identified and compared. Among them, one solution (POS A) was shown to be the worst possible solution, as it was always in a singular configuration due to an architectural singularity. As for the other two solutions, one (POS B) was more compact while the other (POS C) offered the best kinetostatic performance within the desired workspace. Therefore, POS C is considered the best solution obtained from the optimization process for the intended percutaneous intervention task. However, the design approach presented in this paper does not explicitly account for regions of poor performance, as the objective function is based on the mean of the inverse of the condition number. Moreover, while the obtained designs are capable of reaching every pose within the desired cone-shaped workspace, doing so may require a change in assembly modes. These aspects will be further investigated in future work.

## Acknowledgment

This project is supported by the French government under the France 2030 Investment Plan, by the Pays de la Loire Region and by NExT.

## Nomenclature

$\mathcal{F}_O$ = frame attached to point O

$\mathcal{F}_{MP}$ = frame attached to the moving platform MP

$\mathcal{F}^i$ = twist system of limb i

$\mathcal{W}_c$ = constraint wrench system

$\mathcal{W}_a$ = actuation wrench system

$\mathcal{W}_G$ = global wrench system
$\Pi_i$ = plane i

A = forward kinematic Jacobian

B = inverse kinematic Jacobian

$e_{ij}$ = j-th joint axis vector on limb i

$\hat{\epsilon}_{0j}^i$ = pure rotation performed by the j-th joint axis on limb i

$\tau_{0j}^{ci}$ = force constraint on limb i

$\tau_{\infty j}^{ci}$ = constraint moment on limb i

$\mathbf{n}_i$ = normal of plane i

$\mathbf{u}$ = vector defined by the intersection of plane $\Pi_1$ and plane $\Pi_2$

$\mathbf{a}_i$ = position vector of point $A_i$

$\mathbf{b}_i$ = position vector of point $B_i$

$\mathbf{c}_i$ = position vector of point $C_i$

$\mathbf{d}_1$ = position vector of point $D_1$

$\mathbf{o}$ = position vector of point O

$\mathbf{t}$ = twist of the moving platform MP

$\omega$ = angular velocity of the moving platform MP

$\dot{\mathbf{d}}_1$ = linear velocity of the moving platform MP

$\theta_{ij}$ = actuation angle of limb i in the j-th axis

$\dot{\theta}$ = actuated joint velocity vector

$\kappa(\mathbf{M}_n)$ = condition number of the normalized matrix M

$v_i$ = inverse of the condition number

## References

[1] Leung, J., French, J., Xu, J., Kachwalla, H., Kaddapu, K., Badie, T., Musap, C., Rajaratnam, R., Leung, D., Lo, S., and Juergens, C., 2024, "Robotic Assisted Percutaneous Coronary Intervention: Initial Australian Experience," Heart, Lung & Circulation, 33(4), pp. 493-499.

[2] Zhang, W., Zhang, Y., and Liu, Y., 2021, "Design and control of a bionic needle puncture robot," *The international journal of medical robotics + computer assisted surgery: MRCAS*, 17(2), p. e2200.

[3] Hiraki, T., Kamegawa, T., Matsuno, T., Sakurai, J., Komaki, T., Yamaguchi, T., Tomita, K., Uka, M., Matsui, Y., Iguchi, T., Gobara, H., and Kanazawa, S., 2020, "Robotic needle insertion during computed tomography fluoroscopy-guided biopsy: prospective first-in-human feasibility trial," *European Radiology*, 30(2), pp. 927-933.

[4] Poquet, C., Mozer, P., Morel, G., and Vitrani, M.-A., 2013, "A novel comanipulation device for assisting needle placement in ultrasound guided prostate biopsies," *2013 IEEE/RSJ International Conference on Intelligent Robots and Systems*, pp. 4084-4091, doi: 10.1109/IROS.2013.6696941, ISSN: 2153-0866.

[5] Sénac, T., Lelevé, A., Moreau, R., Krähenbühl, L., Sigwalt, F., and Bauer, C., 2021, "Skill Assessment of an Epidural Anesthesia Using the PeriSIM Simulator," *IEEE Transactions on Medical Robotics and Bionics*, 3(1), pp. 106-114.

[6] Vaughan, N., Dubey, V. N., Wee, M. Y., and Isaacs, R., 2013, "A review of epidural simulators: Where are we today?" *Medical Engineering & Physics*, 35(9), pp. 1235-1250.

[7] Boeken, T., 2024, "Redefining challenging liver thermal ablation cases: Present realities, future prospects," *Clinics and Research in Hepatology and Gastroenterology*, 48(6), p. 102342.

[8] Fu, X., Gu, L., Xu, J., and Li, J., 2025, "The effect of ultrasound-guided microwave ablation on liver function and short-term efficacy in patients with

postoperative recurrence of liver cancer," *Current Problems in Surgery*, 65, p. 101734.

[9] He, Z., Dong, Z., Fang, G., Ho, J. D.-L., Cheung, C.-L., Chang, H.-C., Chong, C. C.-N., Chan, J. Y.-K., Chan, D. T. M., and Kwok, K.-W., 2020, "Design of a Percutaneous MRI-Guided Needle Robot With Soft Fluid-Driven Actuator," *IEEE Robotics and Automation Letters*, 5(2), pp. 2100-2107, Conference Name: IEEE Robotics and Automation Letters.

[10] Lum, M. J. H., Friedman, D. C. W., Sankaranarayanan, G., King, H., Fodero, K., Leuschke, R., Hannaford, B., Rosen, J., and Sinanan, M. N., 2009, "The RAVEN: Design and Validation of a Telesurgery System," *The International Journal of Robotics Research*, 28(9), pp. 1183-1197, Publisher: SAGE Publications Ltd STM.

[11] Zhang, N., Huang, P., and Li, Q., 2018, "Modeling, design and experiment of a remote-center-of-motion parallel manipulator for needle insertion," *Robotics and Computer-Integrated Manufacturing*, 50, pp. 193-202.

[12] Sandoval, J., Poisson, G., and Vieyres, P., 2017, "A new kinematic formulation of the RCM constraint for redundant torque-controlled robots," *2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)*, pp. 4576-4581, doi: 10.1109/IROS.2017.8206326, ISSN: 2153-0866.

[13] Wang, Z., Zhang, W., and Ding, X., 2022, "A family of RCM mechanisms: Type synthesis and kinematics analysis," *International Journal of Mechanical Sciences*, 231, p. 107590.

[14] Li, Y., Wu, S., Fan, J., Jiang, T., and Shi, G., 2024, "Design and Analysis of a Spatial 2R1T Remote Center of Motion Mechanism for a Subretinal Surgical Robot," *Actuators*, 13(4), p. 124, Number: 4 Publisher: Multidisciplinary Digital Publishing Institute.

[15] Smits, J., Reynaerts, D., and Poorten, E. V., 2020, "Synthesis and methodology for optimal design of a parallel remote center of motion mechanism: Application to robotic eye surgery," *Mechanism and Machine Theory*, 151, p. 103896.

[16] Li, J., Zhang, G., Müller, A., and Wang, S., 2013, "A Family of Remote Center of Motion Mechanisms Based on Intersecting Motion Planes," *Journal of Mechanical Design*, 135(091009).

[17] Gaitan, K., Sandoval, J., and Caro, S., 2025, "Geometrical Design Analysis of a URRR-URR Parallel Mechanism for Percutaneous Interventions," *New Trends in Medical and Service Robotics*, M. A. Laribi, G. Carbone, D. Pisla, and S. Zeghloul, eds., Springer Nature Switzerland, Cham, pp. 119-129.

[18] Amine, S., Tale Masouleh, M., Caro, S., Wenger, P., and Gosselin, C., 2012, "Singularity analysis of 3T2R parallel mechanisms using Grassmann-Cayley algebra and Grassmann geometry," *Mechanism and Machine Theory*, 52, pp. 326-340.

[19] Amine, S., Tale Masouleh, M., Caro, S., Wenger, P., and Gosselin, C., 2012, "Singularity Conditions of 3T1R Parallel Manipulators With Identical Limb Structures," *Journal of Mechanisms and Robotics*, 4(011011).

[20] Khan, W. A. and Angeles, J., 2005, "The Kinetostatic Optimization of Robotic Manipulators: The Inverse and the Direct Problems," *Journal of Mechanical Design*, 128(1), pp. 168-178.

[21] Ginnante, A., Caro, S., Simetti, E., and Leborne, F., 2023, "Kinetostatic Optimization for Kinematic Redundancy Planning of Nimbl'Bot Robot," *Journal of Mechanisms and Robotics*, pp. 1-20, Publisher: American Society of Mechanical Engineers.

[22] Rakotomanga, N., Chablat, D., and Caro, S., 2008, "Kinetostatic Performance of a Planar Parallel Mechanism with Variable Actuation," *1st International Symposium on Advances in Robot Kinematics*, France, pp. 1-10, accessed 2025-03-24, https://hal.science/hal-00322760

[23] Briot, S. and Arakelian, V., 2008, "On the Kinematic, Kinetostatic and Dynamic Properties of Parallel Manipulators in the Presence of Singularity," *Proceedings of the 10th International Conference on the Theory of Machines and Mechanisms*, Liberec, Czech Republic, pp. 107-112, accessed 2025-03-19, https://hal.science/hal-00451909
List of Figures

<table><tr><td>1</td><td>3D representation of the PercuCob project's experimental platform with the URRR-URR parallel mechanism under study circled in red.</td><td>1</td></tr><tr><td>2</td><td>A mockup of the URRR-URR PM.</td><td>2</td></tr><tr><td rowspan="2">3</td><td>(a) URRR-URR PM with its main design parameters and (b) frames attached to each universal joint.</td><td>2</td></tr><tr><td>(a)</td><td>2</td></tr><tr><td>(b)</td><td>2</td></tr><tr><td rowspan="3">4</td><td>(a) Parametrization of the tool and (b) definition of plane Π<sub>i</sub>.</td><td>3</td></tr><tr><td>(a)</td><td>3</td></tr><tr><td>(b)</td><td>3</td></tr><tr><td>5</td><td>Vector definition of the URRR-URR PM.</td><td>3</td></tr><tr><td>6</td><td>The zero-pitch twists associated with the revolute joints of the URRR-URR PM.</td><td>3</td></tr><tr><td>7</td><td>Constraint wrench system of the URRR-URR PM.</td><td>4</td></tr><tr><td>8</td><td>MP twist system of the URRR-URR PM.</td><td>4</td></tr><tr><td>9</td><td>Planes defining the actuation wrench for θ<sub>12</sub>.</td><td>5</td></tr><tr><td>10</td><td>Actuation wrench system of the URRR-URR PM.</td><td>5</td></tr><tr><td>11</td><td>Two solutions of the URRR-URR PM to its direct geometric model for given arbitrary input angles θ<sub>11</sub> = 20°, θ<sub>12</sub> = 4°, and θ<sub>21</sub> = 10°.</td><td>6</td></tr><tr><td>12</td><td>Determination of the possible locations of B<sub>i</sub>.</td><td>6</td></tr><tr><td>13</td><td>Parallel and serial singularity when point D<sub>1</sub> coincides with point O along OA<sub>1</sub> and point C<sub>2</sub> lies along OA<sub>2</sub>.</td><td>8</td></tr><tr><td>14</td><td>Parallel singularity when e<sub>12</sub> is parallel to e<sub>22</sub>.</td><td>8</td></tr><tr><td>15</td><td>Serial singularity when limb 1 is fully extended such that A<sub>1</sub>C<sub>1</sub> is parallel to B<sub>1</sub>C<sub>1</sub>.</td><td>8</td></tr><tr><td>16</td><td>Values of the objective functions associated with the generated designs in blue (+) and Pareto-optimal solutions (POS) in red (o).</td><td>9</td></tr><tr><td rowspan="3">17</td><td>(a) Cartesian workspace, (b) distribution of the inverse of the condition number of the normalized forward Jacobian over the desired cone-shaped workspace, and (c) CAD design for POS A.</td><td>10</td></tr><tr><td>(a)</td><td>10</td></tr><tr><td>(b)</td><td>10</td></tr><tr><td>(c)</td><td>10</td></tr><tr><td rowspan="3">18</td><td>(a) Cartesian workspace, (b) distribution of the inverse of the condition number of the normalized forward Jacobian over the desired cone-shaped workspace, and (c) CAD design for POS B.</td><td>10</td></tr><tr><td>(a)</td><td>10</td></tr><tr><td>(b)</td><td>10</td></tr><tr><td>(c)</td><td>10</td></tr><tr><td rowspan="3">19</td><td>(a) Cartesian workspace, (b) distribution of the inverse of the condition number of the normalized forward Jacobian over the desired cone-shaped workspace, and (c) CAD design for POS C.</td><td>10</td></tr><tr><td>(a)</td><td>10</td></tr><tr><td>(b)</td><td>10</td></tr><tr><td>(c)</td><td>10</td></tr></table>

List of Tables

<table><tr><td>1</td><td>Values of the design variables for three non-dominated Pareto Optimal Solutions.</td><td>9</td></tr></table>