01122020  Original Article  Issue 1/2020 Open Access
Kinematic Sensitivity Analysis and Dimensional Synthesis of a Redundantly Actuated Parallel Robot for Friction Stir Welding
1 Introduction
Friction stir welding (FSW) is a novel solidstate welding technology that was patented by The Welding Institute in 1991 [
1]. Its advantages over conventional fusion welding processes include the elimination of porosity, low distortion, and no requirement for a filler wire or gas shielding. Consequently, FSW is widely used in the aerospace, shipbuilding, railway, and automotive industries [
2]. During the welding process, a rotating tool is inserted into the workpieces to be joined. Frictional heat generates a softened and plasticized zone near the tool. A consolidated joint is then formed by moving the tool along the joint line [
3], as shown in Figure
1. Huge axial downward force is necessary to maintain a steady joining process [
4]. Maintaining this force requires a very rigid FSW machine structure, especially when joining thick plates.
×
FSW along a complex threedimensional surface requires both orientation capability and high rigidity. These requirements cannot be fulfilled utilizing traditional FSW equipment, which has a limited range of movement, or by sixdegreeoffreedom (DOF) serial industrial robots, which are not sufficiently rigid. A parallel robot (or parallel mechanism) consists of a moving platform, fixed platform, and several limb chains connecting the moving platform to the fixed platform. Based on its structural characteristics, a parallel robot can provide higher rigidity and precision, and lower inertia compared to a serial robot. Therefore, parallel mechanisms are a promising choice for FSW machines.
Advertisement
Parallel robots have been utilized for FSW previously. A Triceptbased hybrid robot for FSW was proposed in Ref. [
5]. A fiveaxis hybrid parallel kinematic machine called VERNE was also utilized for FSW and a control method utilizing force feedback was introduced in Ref. [
6]. The optimal design of an FSW robot based on a 3PRS parallel mechanism was investigated in Ref. [
7], where P denotes a prismatic pair, R denotes a revolute pair, and S denotes a spherical joint. The authors proposed a new hybrid robot for FSW consisting of a 3DOF 2SPRRPS parallel mechanism with a 2DOF PP serial mechanism [
8]. However, the low stiffness and limited rotational capability of spherical joints cannot be neglected for FSW. Overall, the available parallel mechanism architectures for FSW are still very limited and a redundantly actuated parallel robot for FSW has not yet been reported.
Singularity and stiffness are two critical issues for FSW parallel robots. Singularity is an inherent property of parallel mechanisms. In a singular configuration, a parallel mechanism loses its rigidity and becomes uncontrollable. One method to eliminate singularity and increase stiffness is to introduce actuation redundancy. There are two main methods for implementing actuation redundancy in a parallel robot. The first is to actuate passive joints. The second is to include an additional actuated limb without changing the DOF of the mobile platform. Many researchers prefer the second approach.
Significant progress has been made regarding the design of parallel robots with actuation redundancy. Fang et al. proposed redundantly actuated parallel mechanisms for ankle rehabilitation and discussed their kinematics and design [
9,
10]. Qu et al. designed a class of 3DOF wrist mechanisms with redundantly actuated closedloop units [
11]. Wu et al. made significant progress in terms of the force and kinematic optimization of redundantly actuated robots [
12–
15]. Xie et al. [
16] discussed the optimization of a redundantly actuated parallel kinematic mechanism with motion/force transmissibility. Kim et al. made relevant contributions to the optimal design of redundantly actuated parallel robots [
17–
20]. They designed the first 6DOF redundantly actuated parallel robots for fiveface machining and investigated the antagonistic stiffness and energysaving optimization of redundantly actuated parallel mechanisms systematically. Saffi et al. [
21] proposed a redundantly actuated 3RRR spherical parallel manipulator for a haptic device, which improved dexterity and eliminated singularity. Wang et al. [
22] presented the design of an actuation device that could automatically distribute external loads based on stability theorems. Choi et al. [
23] proposed an optimization method for torque distribution of redundantly actuated planar parallel mechanisms based on a nullspace solution. Cheng et al. [
24] proposed a simple scheme for computing the inverse dynamics of a redundantly actuated parallel manipulator and four basic control algorithms. Müller investigated the influence of geometric imperfections on the control of redundantly actuated parallel manipulators [
25,
26]. He also presented a relevant interpretation of the geometric aspects of redundant parallel manipulators [
27]. Wen and Xu [
28] developed a redundantly actuated parallel mechanism with an actuation system for jaw movement. The performance of a fiveaxis hybrid mechanism was improved by an evolutionary algorithm proposed by Gao and Zhang [
29].
In the implementation of dimension synthesis for a knownstructure manipulator, kinematic performance evaluation is conducted at two levels, namely, local indices and global indices, which are classified based on whether or not they are configuration dependent. One important type of local indices is based on the Jacobian matrix. This type varies from configuration to configuration. In earlier studies, kinematic indices have been directly derived from Jacobianbased assessments, such as determinants [
30], singular values [
31], and condition numbers [
32]. However, these indices, which can fail to provide an invariant benchmark for Lie group SE(3), which is a special Euclidean group involving rotation and translation, tend to suffer from unites inconsistency and metric unboundedness [
33]. Therefore, some indices for handling the dimensional nonhomogeneity of Jacobian matrices within noncommensurable systems [
34] have been proposed in recent years. Based on the concept of isotropy, Angeles [
35] proposed an approach to normalize the Jacobian matrix based on an engineered “characteristic length” (CL). Unfortunately, the proper selection of a CL is task dependent. Therefore, this method is not widely accepted [
36,
37]. Furthermore, because the CL is unique for each parallel robot, comparisons between different parallel robots during the design process (even parallel robots with the same architecture, but different dimensions) are not sound. Since the proposition of the CL, more researchers have focused on the physical interpretation of dimensionally homogeneous indices, such as power manipulability [
36] and the mobility tetrahedron method [
38].
Advertisement
In highprecision applications, predicting the boundaries of position and orientation errors for given configurations and actuator errors is crucial. Maximum position and orientation errors are typically regarded as the best assessment metrics for interval sensitivity analysis [
33,
39,
40]. As shown by Li et al. [
41], the sensitivity and accuracy analysis of a parallel robot can be regarded as a convex optimization process. In Ref. [
42], a convex optimization problem was derived from a sixdimensional one level set problem. In this problem, rotation was separated from translation to generate kinematic sensitivity indices with consistent units and clear physical interpretations. Additionally, Wang et al. [
43] proposed an approach to predict the exact output error bounds of parallel manipulators based on the level set method.
To overcome the drawbacks of the 2SPRRPS parallel robot for FSW, a redundantly actuated 2UPR2RPU parallel robot is proposed in this paper. Actuation redundancy is implemented by adding an actuated RPU limb to a 3DOF 2UPRRPU parallel robot [
44–
46] to eliminate singularity and enhance stiffness. In this paper, the kinematic characteristics of the proposed parallel robot are investigated, followed by sensitivity analysis and dimension optimization, where the sensitivity indices utilized are dimensionally homogeneous, coordinate free, and of clear physical significance.
The remainder of this paper is organized as follows. Section
2 presents the model of the 2UPR2RPU parallel robot and corresponding system settings. Section
3 discusses the kinematics, including inverse position analysis, mobility identification and velocity derivation. In Section
4, both local and global indices representing rotation and translation sensitivities are implemented based on the level set method and convex optimization. Section
5 presents dimension optimization based on the proposed indices. Our conclusions are summarized in Section
6.
2 System Description
A CAD model of the 2UPR2RPU parallel robot is presented in Figure
2. The manipulator consists of a base platform, mobile platform, and four limbs arranged symmetrically. Counting from the base to the mobile platform, limb 1 and limb 2 are identical UPR limbs. The first revolute axes of the two U joints are coincident. The second revolute axis of the U joint is parallel to the revolute axis near the mobile platform and perpendicular to the prismatic pair. Limb 3 and limb 4 are identical RPU limbs that are inverted forms of limb 1 and limb 2. Counting from the base, the first revolute axes in limb 3 and limb 4 are parallel. The revolute axis near the mobile platform in the U joint in limb 3 is coincident with the revolute axis near the mobile platform in the U joint in limb 4. All four prismatic pairs are actuated. The centers of the U joints in limb 1 and limb 2 are denoted as
B
_{1} and
B
_{2}, respectively, while the centers of the R joints in limb 3 and limb 4 are denoted as
B
_{3} and
B
_{4}, respectively. The centers of the R joints in limb 1 and limb 2 are denoted as
A
_{1} and
A
_{2}, respectively, while the centers of the U joints in limb 3 and limb 4 are denoted as
A
_{3} and
A
_{4}, respectively.
×
A fixed coordinate frame
O
XYZ, denoted as {
O}, is attached to the base. The origin
O lies on the center point of
B
_{1}
B
_{2}. The
X and
Y axes are coincident with
OB
_{4} and
OB
_{2}, respectively, and the
Z axis points downward. A moving coordinate frame
ouvw, denoted as {
o}, is established on the mobile platform, where the
u axis runs along
oA
_{4},
v axis runs along
oA
_{2}, and
w axis obtained from the righthand rule. The coordinate frame
B
_{i}
x
_{i}
y
_{i}
z
_{i} (
i
= 1–4), denoted as {
R
_{i}}, is attached to limb
i. For {
R
_{i}} (
i
= 1, 2), the
x
_{i} and
y
_{i} axes point along the corresponding axes of the U joint on
B
_{i}. For {
R
_{i}} (
i
= 3, 4), all of the axes point in the same directions as the corresponding axes of {
O}. The joint points {
A
_{1},
A
_{2},
A
_{3},
A
_{4}} and {
B
_{1},
B
_{2},
B
_{3},
B
_{4}} form two rhombuses with
oA
_{1}
=
oA
_{2}
=
r
_{1},
oB
_{1}
=
oB
_{2}
=
r
_{2},
oA
_{3}
=
oA
_{4}
=
r
_{3},
oB
_{3}
=
oB
_{4}
=
r
_{4}, and
r
_{2}
r
_{3}
=
r
_{1}
r
_{4}. The robot for FSW consists of a 2UPR2RPU parallel mechanism and two gantries, as shown in Figure
3.
×
3 Kinematics
3.1 Inverse Position Analysis
For the 2UPR2RPU parallel robot, the rotation transformation matrix of frame {
o} with respect to frame {
O} is derived as
where
\(\beta\) and
\(\gamma\) are the rotation angles of the moving platform around the
Y axis and
u axis, respectively. The letters “c” and “s” represent cosine and sine, respectively. As shown in Figure
4, the position vector of the center point
\(o\) of the moving platform with respect to frame {
O} is denoted as
P.
where “t” represents tangent. The position vectors of joint points
\(A_{i}\) with respect to {
o} and
\(B_{i}\) with respect to {
O} are written as
where the leading superscript “
o” indicates a vector expressed in frame {
o}, and that in frame {
O} is omitted for simplicity. Therefore, the points
\(A_{i}\) with respect to {
O} are derived as
$$\varvec{R} = {\text{Rot}}(y,\beta ){\text{Rot}}(u,\gamma ) = \left[ {\begin{array}{*{20}c} {{\text{c}}_{\beta } } & {{\text{s}}_{\beta } {\text{s}}_{\gamma } } & {{\text{s}}_{\beta } {\text{c}}_{\gamma } } \\ 0 & {{\text{c}}_{\gamma } } & {  {\text{s}}_{\gamma } } \\ {  {\text{s}}_{\beta } } & {{\text{c}}_{\beta } {\text{s}}_{\gamma } } & {{\text{c}}_{\beta } {\text{c}}_{\gamma } } \\ \end{array} } \right],$$
(1)
$$\varvec{P} = [\begin{array}{*{20}c} {z{\text{t}}_{\beta } } & 0 & z \\ \end{array} ]^{\text{T}} ,$$
(2)
$$\left\{ \begin{aligned} & {}^{o}{\varvec{A}}_{1} = [\begin{array}{*{20}l} 0 & {  r_{1} } & 0 \\ \end{array} ]^\text{T}, \quad {\varvec{B}}_{1} = [\begin{array}{*{20}c} 0 & {  r_{2} } & 0 \\ \end{array} ]^\text{T} , \hfill \\ & {}^{o}{\varvec{A}}_{2} = [\begin{array}{*{20}l} 0 & {r_{1} } & 0 \\ \end{array} ]^\text{T}, \quad {\varvec{B}}_{2} = [\begin{array}{*{20}l} 0 & {r_{2} } & 0 \\ \end{array} ]^\text{T} , \hfill \\ &{}^{o}{\varvec{A}}_{3} = [\begin{array}{*{20}l} {  r_{3} } & 0 & 0 \\ \end{array} ]^\text{T}, \quad {\varvec{B}}_{3} = [\begin{array}{*{20}c} {  r_{4} } & 0 & 0 \\ \end{array} ]^\text{T} , \hfill \\& {}^{o}{\varvec{A}}_{4} = [\begin{array}{*{20}l} {r_{3} } & 0 & 0 \\ \end{array} ]^\text{T}, \quad {\varvec{B}}_{4} = [\begin{array}{*{20}l} {r_{4} } & 0 & 0 \\ \end{array} ]^\text{T} , \hfill \\ \end{aligned} \right.$$
(3)
$${\varvec{A}}_{i} \,= \,{\varvec{R}}{}^{o}{\varvec{A}}_{i} + {\varvec{P}}.$$
(4)
×
By combining Eqs. (
2), (
3), and (
4), the inverse position kinematics for the 2UPR2RPU parallel robot can be obtained as follows:
where
$$q_{i} = \left {{\varvec{A}}_{i}  {\varvec{B}}_{i} } \right = \left {[\begin{array}{*{20}c} {\lambda_{i} } & {\mu_{i} } \\ \end{array} ]} \right,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} i = 1,2,3,4,$$
(5)
$$\left\{ \begin{aligned} &\lambda_{1} = z{ \sec }_{\beta }  r_{1} {\text{s}}_{\gamma } ,\,\,\,\mu_{1} = r_{2}  r_{1} {\text{c}}_{\gamma }, \\ & \lambda_{2} = z{ \sec }_{\beta } + r_{1} {\text{s}}_{\gamma } ,\,\,\,\mu_{2} = r_{1} {\text{c}}_{\gamma }  r_{2} , \\ & \lambda_{3} = r_{4}  r_{3} {\text{c}}_{\beta } + z{\text{t}}_{\beta } ,\,\,\,\mu_{3} = z + r_{3} {\text{s}}_{\beta }, \\ & \lambda_{4} = r_{3} {\text{c}}_{\beta } + z{\text{t}}_{\beta }  r_{4} ,\,\,\,\mu_{4} = z  r_{3} {\text{s}}_{\beta }. \\ \end{aligned} \right.$$
3.2 Mobility of the Moving Platform
The mobility of the moving platform depends on its configuration. Based on the screw theory [
47], we not only calculate the DOFs of the 2UPR2RPU parallel robot, but also identify the motion axes under each configuration. In the screw theory, a unit screw
$ is defined as
where
s is a unit vector representing the direction of the screw axis,
r is the position vector of any point on the screw axis, and
h is the pitch.
$$\textbf{\textit\$} = \left( {{\varvec{s }};{\kern 1pt} {\kern 1pt} {\varvec{s}}_{0} } \right) = \left( {{\varvec{s}};{\kern 1pt} {\kern 1pt} {\kern 1pt} {\varvec{r}} \times {\varvec{s}} + h{\varvec{s}}} \right),$$
(6)
A screw
\({\textbf{\textit\$}}^{r} { = }\left( {{\varvec{s}}_{r} ;{\kern 1pt} {\kern 1pt} {\varvec{s}}_{0r} } \right)\) and screw system,
\(\left\{ {{\textbf{\textit\$}}_{1} ,{\textbf{\textit\$}}_{2} , \, . \, . \, . \, ,{\textbf{\textit\$}}_{n} } \right\}\) are said to be reciprocal if they satisfy the following condition:
where “
\(\circ\)” represents the reciprocal product. The screw of the
jth joint of the
ith limb is denoted as
\(\textbf{\textit\$}_{ij}\) and the
kth constraint screw of the
ith limb exerted on the mobile platform is denoted as
\(\textbf{\textit\$}_{ik}^{r}\). For the
ith limbs (
i
= 1, 2), the motion system is defined as
where “
\(\wedge\)” denotes a skewsymmetric operator (for additional details, see Ref. [
48]),
\({\varvec{s}}_{i1} = [\begin{array}{*{20}c} 0 & 1 & 0 \\ \end{array} ]^\text{T}\), and
\({\varvec{s}}_{i2} = {\varvec{s}}_{i4} {\text{ = Rot}}(y,\beta )[\begin{array}{*{20}c} 1 & 0 & 0 \\ \end{array} ]^\text{T}\). Similarly, for the other
ith limbs (
i
= 3, 4), we have
where
\({\varvec{s}}_{i1} = {\varvec{s}}_{i3} = [\begin{array}{*{20}c} 0 & 1 & 0 \\ \end{array} ]^\text{T}\) and
\({\varvec{s}}_{i4} {\text{ = Rot}}(y,\beta )[\begin{array}{*{20}c} 1 & 0 & 0 \\ \end{array} ]^\text{T}\). The two types of screw systems in Eqs. (
8) and (
9), are presented in Figure
2 with
i
= 1 and
i
= 3 for reference. By utilizing Eq. (
7), the constraint wrench system of the
ith limb can be obtained as follows:
where “Rec(·)” denotes the reciprocal operator of a screw system *. Then, all of the constraint wrench systems exerted on the moving platform can be written as
$${\textbf{\textit\$}}_{i} \circ {\textbf{\textit\$}}^{r} = {\varvec{s}}_{i} {\kern 1pt} {\kern 1pt} \cdot {\kern 1pt} {\varvec{s}}_{0r} + {\varvec{s}}_{r} {\kern 1pt} \cdot {\kern 1pt} {\kern 1pt} {\varvec{s}}_{0i} ,$$
(7)
$$\left\{ \begin{aligned} &{\textbf{\textit\$}}_{i1} = (\begin{array}{*{20}l} {{\varvec{s}}_{i1} } & {{\hat{\varvec{B}}}_{i} {\varvec{s}}_{i1} } \\ \end{array} )^\text{T} , \\ &{\textbf{\textit\$}}_{i2} = (\begin{array}{*{20}l} {{\varvec{s}}_{i2} } & {{\hat{\varvec{B}}}_{i} {\varvec{s}}_{i2} } \\ \end{array} )^\text{T} , \\ & {\textbf{\textit\$}}_{i3} = (\begin{array}{*{20}l} {\varvec{0}_{1 \times 3} } & {({\varvec{A}}_{i}  {\varvec{B}}_{i} } \\ \end{array} )/q_{i} )^\text{T} , \\ & {\textbf{\textit\$}}_{i4} = (\begin{array}{*{20}l} {{\varvec{s}}_{i4} } & {{\hat{\varvec{A}}}_{i} {\varvec{s}}_{i4} } \\ \end{array} )^\text{T} , \\ \end{aligned} \right.\quad i = 1,2,$$
(8)
$$\left\{ \begin{aligned} & {\textbf{\textit\$}}_{i1} = (\begin{array}{*{20}l} {{\varvec{s}}_{i1} } & {{\hat{\varvec{B}}}_{i} {\varvec{s}}_{i1} } \\ \end{array} )^\text{T}, \\ & {\textbf{\textit\$}}_{i2} = (\begin{array}{*{20}l} {\varvec{0}_{1 \times 3} } & {({\varvec{A}}_{i}  {\varvec{B}}_{i} } \\ \end{array} )/q_{i} )^\text{T}, \\ & {\textbf{\textit\$}}_{i3} = (\begin{array}{*{20}l} {{\varvec{s}}_{i3} } & {{\hat{\varvec{A}}}_{i} {\varvec{s}}_{i3} } \\ \end{array} )^\text{T}, \\ & {\textbf{\textit\$}}_{i4} = (\begin{array}{*{20}l} {{\varvec{s}}_{i4} } & {{\hat{\varvec{A}}}_{i} {\varvec{s}}_{i4} } \\ \end{array} )^\text{T}, \\ \end{aligned} \right.\quad i = 3,4,$$
(9)
$${\varvec{C}}_{i} = [\begin{array}{*{20}c} {{\textbf{\textit\$}}_{i1}^{r} } & {{\textbf{\textit\$}}_{i2}^{r} } \\ \end{array} ] = {\text{Rec}}({\textbf{\textit\$}}_{i1} ,{\textbf{\textit\$}}_{i2} ,{\textbf{\textit\$}}_{i3} ,{\textbf{\textit\$}}_{i4} ), (i = 1,2,3,4),$$
(10)
$${\varvec{C}} = [\begin{array}{*{20}c} {{\varvec{C}}_{1} } & {{\varvec{C}}_{2} } & {{\varvec{C}}_{3} } & {{\varvec{C}}_{4} } \\ \end{array} ].$$
(11)
Finally, the mobility of the moving platform is defined as
$$\begin{aligned} \varvec{M} & = \text{Rec} ({\varvec{C}}) = (\begin{array}{*{20}c} {{\varvec{M}}_{1} } & {{\varvec{M}}_{2} } & {{\varvec{M}}_{3} } \\ \end{array} )\\ & = \left( {\begin{array}{*{20}c} 0 & 0 & 0 & {{\text{t}}_{\beta } } & 0 & 1 \\ 0 & 1 & 0 & 0 & 0 & 0 \\ {  \cot_{\beta } } & 0 & 1 & 0 & {  z/({\text{s}}_{\beta } {\text{c}}_{\beta } )} & 0 \\ \end{array} } \right)^{\text{T}} . \hfill \\ \end{aligned}$$
(12)
According to Eqs. (
10)‒(
12), although
C is a 6 × 8 matrix, its columnspace rank is three, meaning the moving platform is overconstrained by additional linearly dependent (8 − 3 = 5) wrenches. Therefore, the DOF of the moving platform is 6 − 3 = 3 with one translational DOF along
M
_{1}, and two rotational DOFs along
M
_{2} and
M
_{3}. It is clear that the translational direction of
M
_{1} lies along
\((\begin{array}{*{20}c} {{\text{t}}_{\beta } } & 0 & 1 \\ \end{array} )^{\text{T}}\). The rotational axis of
M
_{2} passes through the origin point at a direction of
\((\begin{array}{*{20}c} 0 & 1 & 0 \\ \end{array} )^{\text{T}}\). Finally, the rotational axis of
M
_{3} points along
\((\begin{array}{*{20}c} {  \cot_{\beta } } & 0 & 1 \\ \end{array} )^{\text{T}}\) with a line moment of
\((\begin{array}{*{20}c} 0 & {  z/({\text{s}}_{\beta } {\text{c}}_{\beta } )} & 0 \\ \end{array} )^{\text{T}}\).
3.3 Velocity Analysis
Taking the firstorder derivative of Eq. (
5) yields
where
\({\dot{\varvec{q}}} = [\begin{array}{*{20}c} {\dot{q}_{1} } & {\dot{q}_{2} } & {\dot{q}_{3} } & {\dot{q}_{4} } \\ \end{array} ]^{\text{T}} ,\)
\({\dot{\varvec{X}}} = [\begin{array}{*{20}c} {\dot{\beta }} & {\dot{\gamma }} & {\dot{z}} \\ \end{array} ]^{\text{T}},\)
\({\varvec{D}} = {\text{diag(}}q_{1} ,\;q_{2} ,\;q_{3} ,\;q_{4} ) ,\)
\(\varvec{G} = [G_{ij} ]_{4 \times 3}\),
\(G_{11} = \lambda_{1} z{ \sec }_{\beta } {\text{t}}_{\beta }\),
\(G_{12} = \mu_{1} r_{1} {\text{s}}_{\gamma }  \lambda_{1} r_{1} {\text{c}}_{\gamma }\),
\(G_{13} = \lambda_{1} { \sec }_{\beta }\),
\(G_{21} = \lambda_{2} z{ \sec }_{\beta } {\text{t}}_{\beta }\),
\(G_{22} = \lambda_{2} r_{1} {\text{c}}_{\gamma }  \mu_{2} r_{1} {\text{s}}_{\gamma }\),
\(G_{23} = \lambda_{2} { \sec }_{\beta }\),
\(G_{31} = \lambda_{3} \left( {r_{3} {\text{s}}_{\beta } + z{ \sec }^{2}_{\beta } } \right) + \mu_{3} r_{3} {\text{c}}_{\beta }\),
\(G_{32} = 0\),
\(G_{33} = \lambda_{3} {\text{t}}_{\beta } + \mu_{3}\),
\(G_{41} = \lambda_{4} \left( {z{ \sec }^{2}_{\beta }  r_{3} {\text{s}}_{\beta } } \right)  \mu_{4} r_{3} {\text{c}}_{\beta }\),
\(G_{42} = 0,\)
\(G_{43} = \lambda_{4} {\text{t}}_{\beta } + \mu_{4}\).
$${\varvec{D\dot{q}}} = \varvec{G}{\dot{\varvec{X}}},$$
(13)
If
D is not singular (i.e.,
\(q_{i} \ne 0\)), then multiplying both sides of Eq. (
13) by
\(\varvec{D}^{  1}\) yields the wellknown velocity Jacobian mapping
where
\({\varvec{J}}_{i}\) is the
ith row of the Jacobian matrix
J,
\({\varvec{\upomega}} = [\begin{array}{*{20}c} {\dot{\beta }} & {\dot{\gamma }} \\ \end{array} ]^{\text{T}}\), and
\({\varvec{v}} = \dot{z}\).
$$\begin{aligned} {\dot{\varvec{q}}} & = \varvec{D}^{  1} \varvec{G}{\dot{\varvec{X}}} = {\varvec{J\dot{X}}} \hfill \\ & = [\begin{array}{*{20}l} {{\varvec{J}}_{2}^{\text{T}} } & {{\varvec{J}}_{2}^{\text{T}} } & {{\varvec{J}}_{3}^{\text{T}} } & {{\varvec{J}}_{4}^{\text{T}} } \\ \end{array} ]^{\text{T}} [\begin{array}{*{20}c} {{\varvec{\upomega}}^{\text{T}} } & {{\varvec{v}}^{\text{T}} } \\ \end{array} ]^{\text{T}} , \hfill \\ \end{aligned}$$
(14)
4 Sensitivity Analysis
The sensitivity of a parallel robot is determined by its mechanical structure, actuator errors, joint clearances, etc. During the design process, the parameter settings of the mechanical structure are the main consideration, so other aspects are not considered in this paper. From the perspective of mechanical structure, the sensitivity of a parallel manipulator indicates how small displacements of the actuator affect the motion of the moving platform in a given configuration. It should be noted that the sensitivity described above is local. Local sensitivity is insufficient for describing the overall sensitivity performance of a parallel manipulator in a realworld workspace. Here, we present both local and general sensitivity analysis of the 2UPR2RPU parallel robot, which is inspired by the work of Cardou et al. [
42].
For a given configuration, the sensitivity problem is defined by maximizing the infinite norm of
w and
v under the velocity Jacobian constraints as follows:
where
\(\sigma_{r,\infty }\) and
\(\sigma_{t,\infty }\) are the indices of rotation sensitivity (RS) and translation sensitivity (TS), respectively. For the 2UPR2RPU parallel robot, we have
\({\varvec{\upomega}} = [\begin{array}{*{20}c} {\dot{\beta }} & {\dot{\gamma }} \\ \end{array} ]^{\text{T}}\) and
\({\varvec{v}} = \dot{z}\), which implies that the optimization problem can be solved in a threedimensional polytope (cube) denoted as
\({\text{P}}_{3} ({\varvec{J}}) = \{ X \in {\mathbb{R}}^{3} \left {{\kern 1pt} {\kern 1pt} \left\ {{\varvec{J\dot{X}}}} \right\_{\infty } } \right. = 1\}\), whose center is located at the origin and whose edge length is two. Note that two of the edges indicate rotation variation and the third edge indicates translation variation. The solution to the problem in Eq. (
15) is given by the onelevel set of the function
where
\({\varvec{T}}(t) = t^{  1} {\varvec{I}}_{3 \times 3}\). Therefore, we have
$$\left\{ \begin{aligned} \sigma_{r,\infty } = \mathop {\text{max} }\limits_{{\varvec{X}}} \left\ {\varvec{\omega}} \right\_{\infty } , \\ \sigma_{t,\infty } = \mathop {\text{max} }\limits_{{\varvec{X}}} \left\ {\varvec{v}} \right\_{\infty } , \\ \end{aligned} \right.\quad {\text{s}}.{\text{t}}.,\quad \left\ {{\dot{\varvec{q}}}} \right\_{\infty } = \left\ {{\varvec{J\dot{X}}}} \right\_{\infty } = 1,$$
(15)
$${\text{P}}_{3} ({\varvec{T}}(t)) = \{ {\varvec{X}} \in {\mathbb{R}}^{3} \left {{\kern 1pt} {\kern 1pt} \left\ {{\varvec{T}}(t){\dot{\varvec{X}}}} \right\} \right._{\infty } = 1\} ,$$
(16)
$$\left\ {{\varvec{T}}(t){\dot{\varvec{X}}}} \right\_{\infty } { = }\left {t^{  1} } \right\left\ {{\dot{\varvec{X}}}} \right\_{\infty } { = }\left\{ {\begin{array}{*{20}c} {\left {t^{  1} } \right\left\ {\varvec{\upomega}} \right\_{\infty } = 1,{\kern 1pt} {\kern 1pt} {\kern 1pt} Rot,} \\ {\left {t^{  1} } \right\left\ {\varvec{v}} \right\_{\infty } = 1,{\kern 1pt} {\kern 1pt} {\kern 1pt} Trans.} \\ \end{array} } \right.$$
(17)
From Eqs. (
15) and (
17), we have
$$\left\{ \begin{aligned} & Rot: \mathop {\text{max} }\limits_{{\varvec{X}}} \left\ {\varvec{\omega}} \right\_{\infty } \Leftrightarrow \mathop {\text{max} }\limits_{{\varvec{X}}} \left t \right, \\ & Trans: \mathop {\text{max} }\limits_{{\varvec{X}}} \left\ {\varvec{v}} \right\_{\infty } \Leftrightarrow \mathop {\text{max} }\limits_{{\varvec{X}}} \left t \right. \\ \end{aligned} \right.$$
(18)
As shown in Figure
4, the convex set
\({\text{P}}_{3} ({\varvec{J}})\) is inscribed in
\({\text{P}}_{3} ({\varvec{T}}(t))\). Regarding the supporting hyperplane theorem [
49], for any boundary point (denoted as
\({\dot{\varvec{X}}}_{0}\)) of
\({\text{P}}_{3} ({\varvec{J}})\), one can always find a supporting hyperplane containing
\({\dot{\varvec{X}}}_{0}\). Therefore, the problem consists of identifying the boundary of
\({\text{P}}_{3} ({\varvec{J}})\) in the directions of the rotational or translational axes, which is equivalent to finding the farthest boundary point
\({\dot{\varvec{X}}}^{*} = {\text{P}}_{3} ({\varvec{T}}(t^{*} ))\) from the origin point
O. By moving the hyperplanes with normal vectors
\({\varvec{e}}_{i}\) along the direction of
\( {\varvec{e}}_{i}\), the point
\({\dot{\varvec{X}}}_{i}^{*}\) can be identified, where the maximum distance is
\(\left {t_{i}^{*} } \right\). Because the envelop of
\({\text{P}}_{3} ({\varvec{J}})\) is symmetric with respect to the origin point
O, the calculation of hyperplanes can be simplified on the side of
\({\varvec{e}}_{i}^{\text{T}} {\dot{\varvec{X}}} \ge 0\). Therefore, the supporting hyperplanes are obtained as
where
\({\varvec{L}} = [\begin{array}{*{20}c} {{\varvec{J}}_{{}}^{\text{T}} } & {  {\varvec{J}}_{{}}^{\text{T}} } \\ \end{array} ]^{\text{T}}\) and
n is the number of actuators. Furthermore, the RS and TS are defined as
$$t_{i}^{*} = \mathop {\text{max} }\limits_{{\varvec{X}}} {\varvec{e}}_{i}^{\text{T}} {\dot{\varvec{X}}},\quad {\text{s}}.{\text{t}}., \quad {\varvec{L\dot{X}}}  \varvec{1}_{2n} \le \varvec{0}_{2n} ,$$
(19)
$$\left\{ \begin{aligned} \sigma_{r,\infty } & = \text{max} (t_{i}^{*} ), i = 1,2, \\ \sigma_{t,\infty } & = t_{3}^{*} . \hfill \\ \end{aligned} \right.$$
(20)
Figure
5 presents the distribution of rotation and translation sensitivities with
\((r_{1} ,r_{2} ,r_{3} ,r_{4} ,z) = (1,3,2,6,\sqrt 6 )\;m\). The small displacements are normalized as
\((\left\ {\varvec{\upomega}} \right\_{\infty } ,\;{\kern 1pt} \left\ {\varvec{v}} \right\_{\infty } ) = (1\;{\kern 1pt} {\text{rad}},{\kern 1pt} {\kern 1pt} 1\;{\text{mm)}}\), and the thresholds are correspondingly selected as
\((\varepsilon_{r,\infty } ,\;\varepsilon_{t,\infty } ) = (10{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\text{rad/m,}}{\kern 1pt} {\kern 1pt} 10{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\text{mm/m)}}\). The atlases are represented by polar coordinates. We denote the polar radius as
\(\beta \in [0,\;90^{ \circ } ]\) and polar angle as
\(\gamma \in [0^{ \circ } ,\;360^{ \circ } ]\). The blank regions in both the RS and TS are denoted as highsensitivity areas (HSAs), where the thresholds
\(\varepsilon_{r,\infty }\) and
\(\varepsilon_{t,\infty }\) eliminate points with extreme values (greater than
\(10^{5} {\text{rad/m or }}10^{5} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\text{mm/m}}\)). The appearance of HSAs is strongly related to the angle
\(\beta\). In the range of
\(\beta = [87^{ \circ } ,\;90^{ \circ } ]\), for any
\(\gamma\), there are no points inside the threshold for the RS. The same is true for the range of
\(\beta = [75^{ \circ } ,\;90^{ \circ } ]\) for the TS. In contrast, the impact of
\(\gamma\) on sensitivity remains at a relatively low level. The region near
\(\gamma \, = \,90^{ \circ }\) exhibits slight fluctuation, while the other regions are largely stable (fluctuations smaller than 1), which can be observed in the dashed boxes of both RS and TS. In summary, we wish to enlarge the lowsensitivity areas, which are far from the rotation angle boundaries, especially for the angle
\(\beta\). Although Figure
5 is presented as a single example, similar distribution trends can be observed in other scenarios without loss of generality.
×
During the performance evaluation of a parallel robot, both types of sensitivity must be considered. As shown above, both sensitivities increase dramatically near the boundaries of rotation angles. Such regions should be avoided during operation. To identify lowsensitivity regions (LSRs), we define the following global indices:
where
\(A_{r}\)(
\(A_{t}\)) is the area in which
\(\sigma_{r,\infty } \le \varepsilon_{r,\infty } (\sigma_{t,\infty } \le \varepsilon_{t,\infty } )\), and the parameter
\(\varepsilon_{r,\infty } (\varepsilon_{t,\infty } )\) denotes the allowable maximum rotational (translational) output error. The parameter
W is the area of the reachable workspace. The parameters
\(\eta_{r} (\eta_{t} )\) and
\(\eta\) denote the ratios of rotational (translational) LSRs and general LSRs, respectively. The greater the magnitudes of
\(\eta_{r} (\eta_{t} )\) and
\(\eta\) for the workspace of a robot, the better the sensitivity. To evaluate the quality of LSRs, we define
where
\(\xi_{r} (\xi_{t} )\) and
\(\xi\) denote the mean values of rotational (translational) LSRs and general LSRs, respectively. The smaller the magnitudes of
\(\xi_{r} (\xi_{t} )\) and
\(\xi\), the better the sensitivity. Here, we do not define an index as
\(\xi = \text{min} (\xi_{r} ,{\kern 1pt} {\kern 1pt} \xi_{t} )\) because the units of
\(\xi_{r}\) and
\(\xi_{t}\) are different. Because different indices describe different characteristics of sensitivities, the priority of indices in Eqs. (
21) and (
22) depends on engineering demands.
$$\eta_{r} = \,W^{  1} \int\limits_{W} {\text{d}} A_{r} ,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \eta_{t} { = }W^{  1} \int\limits_{W} {\text{d}} A_{t} ,$$
(21)
$$\xi_{r} \,= \,A_{r}^{  1} \int\limits_{{A_{r} }} {\sigma_{r,\infty } {\text{d}}} A_{r} ,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \xi_{t} { = }A_{t}^{  1} \int\limits_{{A_{t} }} {\sigma_{t,\infty } {\text{d}}} A_{t} ,$$
(22)
5 Optimization of Architecture Parameters
The performance of a parallel robot is heavily influenced by link parameters. To improve the accuracy of the 2UPR2RPU parallel robot in the design stage, the RS and TS indices are adopted for parameter optimization. The objective of optimization is to find optimal or nearoptimal parameter sets with which the parallel robot has adequate rotational and translational sensitivities. We utilized the optimal design approach from Ref. [
16], where the parameters are initially normalized as
where
D is a normalized factor and
l
_{i} is a normalized nondimensional parameter. When considering practical applications, the normalized lengths
l
_{i} satisfies
$$\left\{ {\begin{array}{*{20}l} {D = (r_{1} + r_{2} + r_{3} )/3,} \\ \begin{aligned} & l_{i} = r_{i} /D i = 1,2,3, \\ & r_{4} = r_{2} r_{3} /r_{1}, \\ \end{aligned} \\ \end{array} } \right.$$
(23)
$$\left\{ \begin{aligned} &l_{3} ,l_{4} \le l_{1} ,l_{2}, \\ & 0 < l_{i} < 3. \\ \end{aligned} \right.$$
(24)
If the length of the stroke
z is too short, the parallel robot may suffer from linkage interference at large rotation angles
\(\gamma\). Therefore, we have
\(z > \text{max} (r_{1} ,r_{3} )\). Additionally, we define
\(z \equiv k\text{max} (r_{2} ,r_{4} )\) as the general working stroke, where
k is a weighting coefficient depending on the application. This is because the stroke
z is not an architecture parameter (such parameters must be designed with fixed values). In a threedimensional space with coordinate axes of
l
_{1},
l
_{2}, and
l
_{3}, as shown in Figure
6, the parameter design space can be represented by the shaded area, which is determined by the conditions in Eqs. (
23) and (
24). Furthermore, the threedimensional design space can be planarized into a twodimensional design space [
50,
51] according to the following equation:
$$\left\{ \begin{aligned} & U = l_{1}, \\ & V = (3  l_{3} + l_{2} )/\sqrt 3 . \hfill \\ \end{aligned} \right.$$
(25)
×
Figure
7 presents the distribution of
\((\eta_{r} ,\eta_{p} ,\sigma_{r} ,\sigma_{p} )\) in the parameter design space. The optimal region (OR) for each index is different. To avoid numerical calculation errors, some optimal points or small ORs are discarded and only large ORs are considered. However, different indices describe different characteristics of sensitivities, meaning dimension optimization must be conducted hierarchically in terms of the priority of indices. Therefore, the expected cost first maximization and second minimization are defined as
where
\((\theta_{11} ,\theta_{12} ,\theta_{21} ,\theta_{22} )\) are weighting factors depending on the characteristic to be highlighted. Eq. (
26) indicates that optimization begins with
\(\mathop {\text{max} }\limits_{U,V} \chi_{1}\), followed by
\(\mathop {\text{min} }\limits_{U,V} \chi_{2}\), where
\(\chi_{i}\) is normalized to a range of zero to one. In this case, we set
\((\theta_{11} ,\theta_{12} ,\theta_{21} ,\theta_{22} ) = (1,1,1,1)\) and the final OR is obtained as shown in Figure
8. First, the region where
\(\chi_{1} = 1\) is selected. However, this region is nearly coincident with the region where
\(\text{max} \chi_{ 2} = 0. 8 5\). According to the hierarchical order of
\(\chi_{i}\), we can derive a compromised OR solution set with
\((\chi_{ 1} ,\chi_{2} ) = ( 1 , 0. 8 5 )\). Robust solutions for the optimized architecture parameters are listed in Table
1, where
\(D = 500\,{\text{ mm}}\)and the value of
\(r_{i}\) is rounded. The 2UPR2RPU parallel robot with optimized dimensions has hierarchical robustness to the disturbances of actuators considering both rotation and translation sensitivities.
$$\left\{ \begin{aligned} \mathop {\text{max} }\limits_{U,V} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \chi_{1} = \frac{1}{{2(\theta_{11} + \theta_{12} )}}\left( {\frac{{\theta_{11} \eta_{r} }}{{{ \text{max} }(\eta_{r} )}} + \frac{{\theta_{12} \eta_{p} }}{{{ \text{max} }(\eta_{p} )}}} \right),{\kern 1pt} {\kern 1pt} {\kern 1pt} 1{\text{st}}{\kern 1pt} {\kern 1pt} {\text{optimization,}} \hfill \\ \mathop {\text{min} }\limits_{U,V} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \chi_{2} = \frac{1}{{2(\theta_{21} + \theta_{22} )}}\left( {\frac{{\theta_{21} \sigma_{r} }}{{{ \text{max} }(\sigma_{r} )}}{ + }\frac{{\theta_{22} \sigma_{p} }}{{{ \text{max} }(\sigma_{p} )}}} \right),{\kern 1pt} {\kern 1pt} {\kern 1pt} 2{\text{nd}}{\kern 1pt} {\kern 1pt} {\text{optimization,}} \hfill \\ \end{aligned} \right.$$
(26)
Table 1
Selected candidates for architecture parameters
No.

U

V

l
_{1}

l
_{2}

l
_{3}

r
_{1} (mm)

r
_{2} (mm)

r
_{3} (mm)

r
_{4} (mm)


#1

0.98

1.8

1.07

0.95

1.04

490

534

476

519

#2

0.94

1.8

1.09

0.97

1.12

470

544

486

562

#3

0.94

1.9

1.18

0.88

1.11

470

588

442

553

#4

0.90

1.8

1.11

0.99

1.22

450

554

496

611

#5

0.90

1.9

1.20

0.90

1.20

450

598

452

601

#6

0.90

2.0

1.28

0.82

1.17

450

641

409

583

#7

0.90

2.1

1.37

0.73

1.11

450

684

366

556

#8

0.90

2.2

1.46

0.64

1.04

450

728

322

521

#9

0.86

1.8

1.13

1.01

1.33

430

564

506

664

#10

0.82

1.8

1.15

1.03

1.44

410

574

516

722

×
×
6 Conclusions
In this paper, we presented the kinematic sensitivity analysis and dimensional synthesis of a 2UPR2RPU redundantly actuated parallel robot for FSW. Mobility analysis revealed that the parallel robot has one translational and two rotational DOFs, which can meet the demands of FSW applications in which the explicit displacement and orientation axes of DOFs are identified. To improve the accuracy of the proposed parallel robot, sensitivity analysis was conducted based on decoupled rotation and translation indices. The range of HSAs is strongly related to the angle
\(\beta\), rather than the angle
\(\gamma\). The region near
\(\gamma = 90^{ \circ }\) exhibits slight fluctuations, while the other regions are largely stable. Furthermore, global sensitivity indices are utilized hierarchically for dimension synthesis for the proposed parallel robot. The parallel robot with optimal parameter sets has relatively good RS and TS performance (i.e., robust to the disturbance of actuators).
Authors’ Contributions
WY was in charge of the whole trial; XC wrote the manuscript; NZ and LH assisted with mathematical modeling; QL assisted with performance evaluation. All authors read and approved the final manuscript.
Authors’ Information
Xinxue Chai, born in 1988, is currently a lecturer at
Zhejiang SciTech University,
China. She received her PhD degree on mechanism design and theory from
Zhejiang SciTech University,
China, in 2017. Her research interests include mechanism theory of parallel manipulators and application.
Ningbin Zhang, born in 1990, is currently a PhD candidate at
Shanghai Jiao Tong University, China. He received his master degree on mechatronic engineering from
Zhejiang SciTech University,
China, in 2016. His research interests include mechanism theory of parallel manipulators and application.
Leiying He, born in 1983, is currently a lecturer at
Zhejiang SciTech University,
China. He received his PhD degree on mechanism design and theory from
Zhejiang SciTech University,
China, in 2014. His research interests include robotics and application.
Qinchuan Li, born in 1975, is currently a professor at
Zhejiang SciTech University, China. He received his PhD degree on mechanism design and theory from
Yanshan University, China, in 2013. His research interests include mechanism theory of parallel manipulators and application.
Wei Ye, born in 1988, is currently a lecturer at
Zhejiang SciTech University,
China. He received his PhD degree on mechanism design and theory from
Beijing Jiaotong University, China, in 2016. His research interests include design and analysis of reconfigurable parallel mechanisms.
Acknowledgements
Not applicable.
Competing Interests
The authors declare that they have no competing interests.
Availability of Data and Materials
All data generated or analysed during this study are included in this published article.
Funding
Supported by National Natural Science Foundation of China (Grant Nos. U1713202, 51525504).
Open AccessThis article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit
http://creativecommons.org/licenses/by/4.0/.