1 Introduction

Parallel robotic mechanism with high stiffness, high load capacity, and high-precision movement are utilized extensively nowadays. The dexterity of parallel manipulator is an important performance evaluation index. Kinematic dexterity can describe the transfer performance of such mechanisms. Gosselin and Angeles (1991) introduced the concept of dexterity to parallel manipulators and utilized the condition number of the Jacobian matrix to characterize dexterity. Zhang et al. (2010) employed kinematic conditioning index (KCI) to evaluate the dexterity of a parallel robotic mechanism and determined the spatial distribution of KCI. Luo et al. (2005) proposed a global dexterity calculation method for a 3-UPU parallel manipulator to reach the design optimization goals. Li and Zhao (2007) applied the Jacobian matrix condition number, minimum singular value, and operability index to solve the analytical model of the mechanism and study the dexterity of a new type of 2-DOF parallel robot. The references above established the foundation of dexterity index from a kinematic point of view; no dynamics are involved in the dexterity of the parallel manipulator.

The present study focuses on a 3-DOF parallel fine-tuning manipulator utilized in the segment assembly system in shield tunneling machines. An increasing number of parallel manipulators are being adopted in the segment assembly system to improve its efficiency and accuracy. The Stewart platform has been employed for the assembly of the segments of a shield tunnel excavation system (Kosuge et al. 1996). Zyada et al. (2003) presented experimental results on the multi-directional segment assembly of a shield tunnel excavation system using the hydraulic Gough-Stewart platform. Braaksma et al. (2006) designed a feedback-linearizing hybrid position-force controller for a novel robot manipulator in a shield tunneling machine. Wu et al. (2011) focused on a 3-SPS-1-S parallel manipulator for segment assembly robots in shield tunneling machines. Shi et al. (2009) presented a 6-DOF shield tunneling machine controlled by electro-hydraulic proportional systems. Cui et al. (2010) utilized a 6-DOF serial and parallel manipulator as the segment erector mechanism; a kinematics analysis was performed.

This study proposes the concept of operating dexterity, including kinematic and dynamic dexterity, to describe the transmission and acceleration of the manipulator. The operating dexterity of a parallel fine-tuning manipulator with the structure of 4-SPS-S was investigated. The local and global dynamic dexterity indices were established with generalized inertia ellipsoid theory and Lagrange equation. The condition number of the Jacobian matrix was introduced to build the local and global kinematic dexterity indices. Then, a multi-objective optimization model of the proposed manipulator was established in consideration of kinematic and dynamic dexterity. Furthermore, a new multi-objective optimization method was developed with Isight software. Local and global operating dexterity were analyzed after optimization, and the manipulator’s optimum region was investigated.

2 Modeling of the parallel manipulator

A 4-SPS-S redundant parallel manipulator was employed for segment assembly in a tunneling machine (Cui et al. 2010). In the operating process, the segment assembly robot must accomplish six motions, including lift, translation, rotation, pitch, roll, and yaw. By combining the features of serial and parallel manipulators and the application requirements of the segment assembly, this research employed a serial-parallel robot as the segment assembly robot (Fig. 1). This robot comprises transmission, rotation, lifting, and fine-tuning operating mechanisms. The frame and the mechanisms of transmission, rotation, and lifting form the 3-DOF serial manipulator to achieve rough positioning of the segment. The fine-tuning manipulator is a 4-SPS-S manipulator that accomplishes pitch, roll, and yaw motions to achieve accurate positioning of the segment. Figure 2 shows a 3D model of the parallel fine-tuning manipulator.

Fig. 1
figure 1

Kinematic structure of the segment assembly robot

Fig. 2
figure 2

Kinematic structure of the parallel fine-tuning manipulator and segment

Figure 3 shows the 4-SPS-S mechanism. Four active chains (S–P–S) are connected to the base and moving platform in \( A_{i} \) and \( B_{i} \) (\( i = 1,\,\;2,\,\;3,\;\,4 \)). The height of the moving platform is \( H \). The passive chain is connected to the base and moving platform in \( O_{A} \) and \( O_{B} \). The two platforms are connected by a spherical joint. \( O \) is set as the origin of the coordinate; the fixed and moving coordinate systems are \( O - X_{A} Y_{A} Z_{A} \) and \( O - X_{B} Y_{B} Z_{B} \). Two coordinates coincide in the initial position. The distance between \( O \) and the base platform is \( h \). \( A_{1} \), \( A_{2} \), and \( A_{3} \) are averages distributed on the circle with a radius of \( r_{A} \). \( A_{4} \) is on the plane perpendicular to the base and parallel to \( O_{A} A_{3} \); the distance to the base platform is \( h_{A} \). The project length of \( A_{1} \) and \( A_{4} \) on the base platform is \( s \). \( B_{1} \), \( B_{2} \), and \( B_{3} \) are averages distributed on the circle with a radius of \( r_{B} \). \( B_{4} \) is on the plane \( X_{B} OZ_{B} \); the distance to \( Z_{B} \) is \( (t \cdot r_{B} ) \) and that to the base platform is \( h_{B} \).

Fig. 3
figure 3

Kinematic diagram of the 4-SPS-S mechanism

3 Determination of the kinematic model

According to coordinate transformation theory,

$$ {\mathbf{l}}_{{\mathbf{i}}} = {}_{{\mathbf{B}}}^{{\mathbf{A}}} {\mathbf{R}} \cdot {}^{{\mathbf{B}}}{\mathbf{p}}_{{{\mathbf{Bi}}}} - {}^{{\mathbf{A}}}{\mathbf{p}}_{{{\mathbf{Ai}}}} \begin{array}{*{20}c} {} & {(i = 1,\;2,\;3,\;4)} \\ \end{array} $$
(1)

where \( {\mathbf{l}}_{{\mathbf{i}}} \) is the vector of limbs in the fixed coordinate system, \( {}^{{\mathbf{A}}}{\mathbf{p}}_{{{\mathbf{Ai}}}} \) is a vector of \( A_{i} \) in the fixed coordinate system \( O - X_{A} Y_{A} Z_{A} \), and \( {}^{{\mathbf{B}}}{\mathbf{p}}_{{{\mathbf{Bi}}}} \) is the vector of \( B_{i} \) in the coordinate \( O - X_{B} Y_{B} Z_{B} \).

$$ \left\{ \begin{gathered} {}^{{\mathbf{A}}}{\mathbf{p}}_{{{\mathbf{A1}}}} = [r_{A} \begin{array}{*{20}c} {} \\ \end{array} 0\begin{array}{*{20}c} {} \\ \end{array} - h]^{T} \hfill \\ {}^{{\mathbf{A}}}{\mathbf{p}}_{{{\mathbf{A2}}}} = [ - r_{A} /2\begin{array}{*{20}c} {} \\ \end{array} - \sqrt 3 r_{A} /2\begin{array}{*{20}c} {} \\ \end{array} - h]^{T} \hfill \\ {}^{{\mathbf{A}}}{\mathbf{p}}_{{{\mathbf{A3}}}} = [ - r_{A} /2\begin{array}{*{20}c} {} \\ \end{array} \sqrt 3 r_{A} /2\begin{array}{*{20}c} {} \\ \end{array} - h]^{T} \hfill \\ {}^{{\mathbf{A}}}{\mathbf{p}}_{{{\mathbf{A4}}}} = [r_{A} - s/2\begin{array}{*{20}c} {} \\ \end{array} \sqrt 3 s/2\begin{array}{*{20}c} {} \\ \end{array} h_{A} - h]^{T} \hfill \\ \end{gathered} \right. $$
(2)
$$ \left\{ \begin{gathered} {}^{{\mathbf{B}}}{\mathbf{p}}_{{{\mathbf{B1}}}} = [r_{B} \begin{array}{*{20}c} {} \\ \end{array} 0\begin{array}{*{20}c} {} \\ \end{array} H - h]^{T} \hfill \\ {}^{{\mathbf{B}}}{\mathbf{p}}_{{{\mathbf{B2}}}} = [ - r_{B} /2\begin{array}{*{20}c} {} \\ \end{array} - \sqrt 3 r{}_{B}/2\begin{array}{*{20}c} {} \\ \end{array} H - h]^{T} \hfill \\ {}^{{\mathbf{B}}}{\mathbf{p}}_{{{\mathbf{B3}}}} = [ - r{}_{B}/2\begin{array}{*{20}c} {} \\ \end{array} \sqrt 3 r_{B} /2\begin{array}{*{20}c} {} \\ \end{array} H - h]^{T} \hfill \\ {}^{{\mathbf{B}}}{\mathbf{p}}_{{{\mathbf{B4}}}} = [r_{B} \cdot t\begin{array}{*{20}c} {} \\ \end{array} 0\begin{array}{*{20}c} {} \\ \end{array} H - h - h_{B} ]^{T} \hfill \\ \end{gathered} \right. $$
(3)

The 4-SPS-S parallel manipulator exhibits three rotations and is an actuation redundant parallel manipulator. According to RPY transformation, the rotation matrix is

$$ {}_{{\mathbf{B}}}^{{\mathbf{A}}} {\mathbf{R}} = {\mathbf{RPY}}(\gamma ,\beta ,\alpha ) = \left[\begin{array}{lll} c\gamma c\beta & {c\gamma s\beta s\alpha - s\gamma c\alpha } &c\gamma s\beta c\alpha + s\gamma s\alpha\\ s\gamma c\beta & {s\gamma s\beta s\alpha + c\gamma c\alpha}&s\gamma s\beta c\alpha - c\gamma s\alpha\\- s\beta &{c\beta s\alpha }&c\beta c\alpha \end{array}\right]$$
(4)

where \( \alpha \), \( \beta \), and \( \gamma \) are the angles of pitch, roll, and yaw of the moving platform, respectively. \( \sin \gamma \) and \( \cos \gamma \) are expressed as \( s\gamma \) and \( c\gamma \), respectively.

The three output parameters (\( \alpha \), \( \beta \), \( \gamma \)) are selected as the independent coordinate of generalized coordinates. \( {\mathbf{q}} = [\alpha \begin{array}{*{20}c} {} \\ \end{array} \beta \begin{array}{*{20}c} {} \\ \end{array} \gamma ]^{T} \), so the generalized velocity is \( {\dot{\mathbf{q}}} = [\dot{\alpha }\begin{array}{*{20}c} {} \\ \end{array} \dot{\beta }\begin{array}{*{20}c} {} \\ \end{array} \dot{\gamma }]^{T} \).

According to the inverse kinematics of the parallel manipulator, \( {\mathbf{l}}_{{\mathbf{i}}} \) can be determined by \( \alpha \), \( \beta \), \( \gamma \). The squared length for each limb is a function of \( \alpha \), \( \beta \), \( \gamma \).

$$ l_{i}^{2} = \left\| {{\mathbf{l}}_{{\mathbf{i}}} } \right\|^{2} = \left\| {{}^{{\mathbf{A}}}{\mathbf{p}}_{{{\mathbf{Bi}}}} - {}^{{\mathbf{A}}}{\mathbf{p}}_{{{\mathbf{Ai}}}} } \right\|^{2} = \varTheta_{i} \left( {\alpha ,\beta ,\gamma } \right) $$
(5)

The derivative of Eq. (5) is obtained as

$$ {\mathbf{A}}\dot{{\mathbf{l}}} = {{{\mathbf B}\dot{{\mathbf{q}}}}} $$
(6)
$$ {\dot{\mathbf{l}}} = {\mathbf{A}}^{ - 1} {{{\mathbf B}\dot{\mathbf{q}}}} $$
(7)

where \( {\mathbf{J}} = {\mathbf{A}}^{{ - {\mathbf{1}}}} {\mathbf{B}} \) is the Jacobian matrix of the parallel manipulator.

$$ \begin{gathered} {\mathbf{A}} = \left[ {\begin{array}{*{20}c} {2l_{1} } & 0 & 0 & 0 \\ 0 & {2l_{2} } & 0 & 0 \\ 0 & 0 & {2l_{3} } & 0 \\ 0 & 0 & 0 & {2l_{4} } \\ \end{array} } \right] \hfill \\ {\mathbf{B}} = \left[ {\begin{array}{*{20}c} {\frac{{\partial \varTheta_{1} (\alpha ,\beta ,\gamma )}}{\partial \alpha }} & {\frac{{\partial \varTheta_{1} (\alpha ,\beta ,\gamma )}}{\partial \beta }} & {\frac{{\partial \varTheta_{1} (\alpha ,\beta ,\gamma )}}{\partial \gamma }} \\ {\frac{{\partial \varTheta_{2} (\alpha ,\beta ,\gamma )}}{\partial \alpha }} & {\frac{{\partial \varTheta_{2} (\alpha ,\beta ,\gamma )}}{\partial \beta }} & {\frac{{\partial \varTheta_{2} (\alpha ,\beta ,\gamma )}}{\partial \gamma }} \\ {\frac{{\partial \varTheta_{3} (\alpha ,\beta ,\gamma )}}{\partial \alpha }} & {\frac{{\partial \varTheta_{3} (\alpha ,\beta ,\gamma )}}{\partial \beta }} & {\frac{{\partial \varTheta_{3} (\alpha ,\beta ,\gamma )}}{\partial \gamma }} \\ {\frac{{\partial \varTheta_{4} (\alpha ,\beta ,\gamma )}}{\partial \alpha }} & {\frac{{\partial \varTheta_{4} (\alpha ,\beta ,\gamma )}}{\partial \beta }} & {\frac{{\partial \varTheta_{4} (\alpha ,\beta ,\gamma )}}{\partial \gamma }} \\ \end{array} } \right] \hfill \\ \end{gathered} $$

As shown in Figs. 1 and 2, the segment center of gravity is assumed to be \( G \). In the working process, the segment and the moving platform are connected to each other; thus, the coordinate of point \( G \) in the moving coordinate system is \( {}^{{\mathbf{B}}}{\mathbf{p}}_{{\mathbf{G}}} = [0\begin{array}{*{20}c} {} \\ \end{array} 0\begin{array}{*{20}c} {} \\ \end{array} 1134 - h] \). According to the rotating coordinate transformation, we obtain

$$ {}^{{\mathbf{A}}}{\mathbf{p}}_{{\mathbf{G}}} = {}_{{\mathbf{B}}}^{{\mathbf{A}}} {\mathbf{R}} \cdot {}^{{\mathbf{B}}}{\mathbf{p}}_{{\mathbf{G}}} = [X(\alpha ,\beta ,\gamma )\begin{array}{*{20}c} {} \\ \end{array} Y(\alpha ,\beta ,\gamma )\begin{array}{*{20}c} {} \\ \end{array} Z(\alpha ,\beta ,\gamma )]^{T} . $$
(8)

\( {}^{{\mathbf{A}}}{\mathbf{p}}_{{\mathbf{G}}} \), which is the coordinate of the gravity center of segment \( G \) in the fixed coordinate system, is a function of \( \alpha \), \( \beta \), \( \gamma \).

$$ {}^{{\mathbf{A}}}{\mathbf{P}}_{{\mathbf{G}}} = \left[\begin{array}{l} (1134 - h)(c\gamma s\beta c\alpha + s\gamma s\alpha )\\ (1134 - h)(s\gamma s\beta c\alpha - c\gamma s\alpha ) \\(1134 - h)c\beta c\alpha\end{array} \right]$$
(9)

By obtaining the derivative of Eq. (8), the linear velocity of \( G \) is

$$ {\mathbf{v}} = {\mathbf{J}}_{{\mathbf{v}}} \cdot {\dot{\mathbf{q}}} $$
(10)

where

$$ \begin{gathered} {\mathbf{v}} = [\dot{X}\begin{array}{*{20}c} {} \\ \end{array} \dot{Y}\begin{array}{*{20}c} {} \\ \end{array} \dot{Z}]^{T} \hfill \\ {\mathbf{J}}_{{\mathbf{v}}} = \left[ \begin{gathered} \begin{array}{*{20}c} {\frac{\partial X(\alpha ,\beta ,\gamma )}{\partial \alpha }} & {\frac{\partial X(\alpha ,\beta ,\gamma )}{\partial \beta }} & {\frac{\partial X(\alpha ,\beta ,\gamma )}{\partial \gamma }} \\ \end{array} \hfill \\ \begin{array}{*{20}c} {\frac{\partial Y(\alpha ,\beta ,\gamma )}{\partial \alpha }} & {\frac{\partial Y(\alpha ,\beta ,\gamma )}{\partial \beta }} & {\frac{\partial Y(\alpha ,\beta ,\gamma )}{\partial \gamma }} \\ \end{array} \hfill \\ \begin{array}{*{20}c} {\frac{\partial Z(\alpha ,\beta ,\gamma )}{\partial \alpha }} & {\frac{\partial Z(\alpha ,\beta ,\gamma )}{\partial \beta }} & {\frac{\partial Z(\alpha ,\beta ,\gamma )}{\partial \gamma }} \\ \end{array} \hfill \\ \end{gathered} \right]. \hfill \\ \end{gathered} $$

According to the physical definitions of \( \alpha \), \( \beta \), and \( \gamma \) in the RPY transformation, the angular velocity of the center of the segment expressed in the fixed coordinate system is

$$ {\varvec{\upomega}} = {\mathbf{J}}_{{\varvec{\upomega}}} \cdot {\dot{\mathbf{q}}} $$
(11)

where

$$ \begin{gathered} {\varvec{\upomega}} = [\dot{\alpha }\begin{array}{*{20}c} {} \\ \end{array} \dot{\beta }\begin{array}{*{20}c} {} \\ \end{array} \dot{\gamma }]^{T} \hfill \\ {\mathbf{J}}_{{\varvec{\upomega}}} = \left[ \begin{gathered} \begin{array}{*{20}c} 1 & 0 & 0 \\ \end{array} \hfill \\ \begin{array}{*{20}c} 0 & 1 & 0 \\ \end{array} \hfill \\ \begin{array}{*{20}c} 0 & 0 & 1 \\ \end{array} \hfill \\ \end{gathered} \right]. \hfill \\ \end{gathered} $$

4 Operating dexterity of the mechanism

Operating dexterity includes kinematic and dynamic dexterity. It is utilized to describe the transmission and acceleration performance of the parallel manipulator. A fine-tuning manipulator requires excellent acceleration capability to improve the accuracy and efficiency of segment assembling, and the transmission between the input and output should not be distorted. The distortion relation between the input and output with kinematic dexterity was described in this study; dynamic dexterity was proposed to measure the acceleration performance of a specific position. The mean value of the condition number of the Jacobian matrix in the workspace was employed as global kinematic dexterity, and global dynamic dexterity was built based on the principle of generalized inertia ellipsoid.

4.1 Dynamic dexterity index

The generalized inertia ellipsoid proposed by Asada (1983) was adopted to establish dynamic dexterity and build the dynamic dexterity index to describe the acceleration performance in a given point of the parallel manipulator. The mass matrix was employed to build the generalized inertia ellipsoid.

For \( n \times n \) mass matrix \( {\mathbf{M}} \), the quadratic equation is

$$ x^{T} {\mathbf{M}}x = 1, $$
(12)

which represents generalized inertia ellipsoid GIE in \( n \) dimensional space. The long axis of the ellipsoid is the square root of the largest eigenvalue of mass matrix \( {\mathbf{M}} \), and the short axis is the square root of the smallest eigenvalue of \( {\mathbf{M}} \). The closer the ellipsoid is to a sphere (i.e., the long and short axes are almost equal), the better the dynamics performance is. Thus, the ratio of the squared length of the short and long axes of generalized inertia ellipsoid, namely, the ratio of the smallest and largest eigenvalues of mass matrix \( {\mathbf{M}} \), is local dynamic dexterity \( \kappa_{M} \).

$$ \kappa_{M} = \lambda_{\hbox{min} } ({\mathbf{M}})/\lambda_{\hbox{max} } ({\mathbf{M}}) $$
(13)

where \( {\mathbf{M}} \) is the mass matrix. The range of \( \kappa_{M} \) is \( 0 \le \kappa_{M} \le 1 \). When \( \kappa_{M} = 1 \), \( \kappa_{M} \) has dynamic isotropy.

Global dexterity can be utilized to describe the mean value of \( \kappa_{M} \) in the workspace. The global dexterity index is

$$ \eta_{M} = \frac{{\int {_{W} \kappa_{M} dW} }}{{\int {_{W} dW} }} $$
(14)

where \( W \) is the workspace of the parallel manipulator and global dexterity index \( \eta_{M} \) is in the range \( 0 \le \eta_{M} \le 1 \). The closer index \( \eta_{M} \) is to 1, the better the dynamic dexterity and acceleration performance.

Lagrange method was employed to build the dynamic model of the parallel manipulator and solve mass matrix \( {\mathbf{M}} \)(Ridha et al. 2012). The Lagrange equation is Eq. (15)

$$ \frac{d}{dt}\left(\frac{{\partial K({\mathbf{q}},{\dot{\mathbf{q}}})}}{{\partial {\dot{\mathbf{q}}}}}\right) - \frac{{\partial K({\mathbf{q}},{\dot{\mathbf{q}}})}}{{\partial {\mathbf{q}}}} + \frac{{\partial P({\mathbf{q}})}}{{\partial {\mathbf{q}}}} = {\varvec{\uptau}} $$
(15)

where \( {\mathbf{q}} \) contains the generalized coordinates, \( {\varvec{\uptau}} \) is the generalized actuation force, \( P({\mathbf{q}}) \) is the potential energy, and \( K({\mathbf{q}},{\dot{\mathbf{q}}}) = \frac{1}{2}{\dot{\mathbf{q}}}^{T} {{{\mathbf M}\dot{\mathbf{q}}}} \) is the kinematic energy.

Rearranging the equation results in

$$ {\mathbf{M}}\mathop {\mathbf{q}}\limits^{..} + V({\mathbf{q}},{\dot{\mathbf{q}}}){\dot{\mathbf{q}}} + G({\mathbf{q}}) = {\varvec{\uptau}} $$
(16)

where \( {\mathbf{M}} \) is the mass matrix, \( V({\mathbf{q}},{\dot{\mathbf{q}}}) \) is the coriolis coefficient, and \( G({\mathbf{q}}) \) is the gravity coefficient.

The weight of the parallel component can be neglected because the segment has a large weight. When calculating the kinematic energy of the parallel manipulator system, only the kinematic energy of the segment needs to be calculated.

When the segment is rotating around the spherical joint, the kinematic energy of the segment is

$$ T = \frac{1}{2}(m{\mathbf{v}}^{T} {\mathbf{v}} + {\varvec{\upomega}}^{T} {\mathbf{I\omega }}) $$
(17)

where \( m \) is the mass of the segment, \( {\mathbf{v}} \) is the linear velocity of gravity center \( G \) in the fixed coordinate, \( {\varvec{\upomega}} \) is the angular velocity of the gravity center in the fixed coordinate, and \( {\mathbf{I}} \) is the inertia matrix.

When calculating its kinetic energy,

$$ {\mathbf{I}} = {}_{{\mathbf{B}}}^{{\mathbf{A}}} {\mathbf{R}}[{\mathbf{I}}_{{\mathbf{c}}} ]{}_{{\mathbf{B}}}^{{\mathbf{A}}} {\mathbf{R}}^{T} $$
(18)

where \( [{\mathbf{I}}_{{\mathbf{c}}} ] = \left[ {\begin{array}{*{20}c} \begin{gathered} 9.697e2 \hfill \\ 0 \hfill \\ 0 \hfill \\ \end{gathered} & \begin{gathered} 0 \hfill \\ 5.465e3 \hfill \\ 0 \hfill \\ \end{gathered} & \begin{gathered} 0 \hfill \\ 0 \hfill \\ 5.997e3 \hfill \\ \end{gathered} \\ \end{array} } \right]kg \cdot m^{2} \) is the main inertia matrix of the segment.

Substituting Equations (10), (11), and (18) into (17) results in

$$ \begin{aligned} T =& {\frac{1}{2}}(m{\mathbf{v}}^{T} {\mathbf{v}} + {\varvec{\upomega}}^{T} {\mathbf{I\omega }}) \\ =& {\frac{1}{2}}[m({\mathbf{J}}_{{\mathbf{v}}} {\dot{\mathbf{g}}})^{T} ({\mathbf{J}}_{{\mathbf{v}}} {\dot{\mathbf{g}}}) + ({\mathbf{J}}_{{\varvec{\upomega}}} {\dot{\mathbf{g}}})^{T} {\mathbf{I}}({\mathbf{J}}_{{\varvec{\upomega}}} {\dot{\mathbf{g}}})] \\ =& \frac{1}{2}[m{\dot{\mathbf{g}}}^{T} {\mathbf{J}}_{{\mathbf{v}}}^{T} {\mathbf{J}}_{{\mathbf{v}}} {\dot{\mathbf{g}}} + {\dot{\mathbf{g}}}^{T} {\mathbf{J}}_{{\varvec{\upomega}}}^{T} {\mathbf{IJ}}_{{\varvec{\upomega}}} {\dot{\mathbf{g}}}] \\ = & \frac{1}{2}{\dot{\mathbf{g}}}(m{\mathbf{J}}_{{\mathbf{v}}}^{T} {\mathbf{J}}_{{\mathbf{v}}} + {\mathbf{J}}_{{\varvec{\upomega}}}^{T} {\mathbf{IJ}}_{{\varvec{\upomega}}} ){\dot{\mathbf{g}}} \\ \end{aligned}$$
(19)

The kinetic energy can then be expressed in a quadratic form as

$$ T = \frac{1}{2}{\dot{\mathbf{q}}}^{T} (m{\mathbf{J}}_{{\mathbf{v}}}^{T} {\mathbf{J}}_{{\mathbf{v}}} + {\mathbf{J}}_{{\varvec{\upomega}}}^{T} {\mathbf{IJ}}_{{\varvec{\upomega}}} ){\dot{\mathbf{q}}}. $$
(20)

The mass matrix of the operating space is

$$ {\mathbf{M}} = m{\mathbf{J}}_{{\mathbf{v}}}^{T} {\mathbf{J}}_{{\mathbf{v}}} + {\mathbf{J}}_{{\varvec{\upomega}}}^{T} {\mathbf{IJ}}_{{\varvec{\upomega}}} . $$
(21)

4.2 Kinematic dexterity index

When the parallel manipulator is close to a singular position, the relation between the output and input is highly nonlinear. The kinematic dexterity index is introduced to describe the degree of movement distortion. For a pure translation and rotation parallel manipulator, the inverse of the condition number of the Jacobian matrix can be utilized to describe kinematic local dexterity.

$$ \kappa_{J} = \frac{1}{\kappa } = \sqrt {\lambda_{\hbox{min} } ({\mathbf{J}}^{T} {\mathbf{J}})} /\sqrt {\lambda_{\hbox{max} } ({\mathbf{J}}^{T} {\mathbf{J}})} $$
(22)

where \( \lambda_{\hbox{max} } ({\mathbf{J}}^{T} {\mathbf{J}}) \) and \( \lambda_{\hbox{min} } ({\mathbf{J}}^{T} {\mathbf{J}}) \) are the maximum and minimum eigenvalues of \( {\mathbf{J}}^{T} {\mathbf{J}} \).

The condition number is in the range \( \kappa \in [1, + \infty ) \). When it is close to 1, it has kinematic isotropy and exhibits the best kinematic transmission performance; when it is close to infinity, the parallel manipulator is in a singular position.

The global dexterity index can be utilized to describe the mean value of the condition number of the Jacobian matrix in the entire workspace.

$$ \eta_{J} = \frac{{\int {_{W} \kappa_{J} dW} }}{{\int {_{W} dW} }} $$
(23)

where \( W \) is the workspace of the parallel manipulator.

The global dexterity index is in the range \( 0 \le \eta_{J} \le 1 \); the closer it is to 1, the better dexterity and control precision are.

5 Multi-objective dimensional optimization of operating dexterity

Global dynamic and global kinematic dexterity were adopted as the objectives to make the 4-SPS-S parallel fine-tuning manipulator achieve good transmission and acceleration motion performance. The related parameters were selected as the design variables, and multi-objective dimensional synthesis was conducted for the parallel manipulator (Sun et al. 2012; Alici et al. 2004; Hao et al. 2005).

5.1 Modeling of multi-objective optimization

The initial parameters are \( r_{A} = r_{B} = 1,050\;{\text{mm}} \), \( h_{A} = h_{B} = 150\;{\text{mm}} \), \( H = 310\;{\text{mm}} \). The rotation angles in the working process are

$$ \left\{ \begin{gathered} - 10^{ \circ } \le \alpha \le 10^{ \circ } \hfill \\ - 10^{ \circ } \le \beta \le 10^{ \circ } \hfill \\ - 15^{ \circ } \le \gamma \le 15^{ \circ } \hfill \\ \end{gathered} \right.. $$

Global kinematic and dynamic dexterity were determined under the constraint of structural and rotation angles.

The multi-objective optimization design model is

$$ \left\{ \begin{gathered} \hbox{min} \begin{array}{*{20}c} {} \\ \end{array} f_{1} (X) = \eta_{J} (h\begin{array}{*{20}c} {} \\ \end{array} s\begin{array}{*{20}c} {} \\ \end{array} t) \hfill \\ \hbox{max} \begin{array}{*{20}c} {} \\ \end{array} f_{2} (X) = \eta_{M} (h\begin{array}{*{20}c} {} \\ \end{array} s\begin{array}{*{20}c} {} \\ \end{array} t) \hfill \\ s.t.\begin{array}{*{20}c} {} \\ \end{array} 150 \le h \le 310\;{\text{mm}} \hfill \\ \begin{array}{*{20}c} \begin{gathered} \hfill \\ \hfill \\ \end{gathered} & \begin{gathered} 300 \le s \le 600\;{\text{mm}} \hfill \\ 0.4 \le t \le 0.8 \hfill \\ \end{gathered} \\ \end{array} \hfill \\ \end{gathered} \right. $$
(24)

where \( X = [h\begin{array}{*{20}c} {} \\ \end{array} s\begin{array}{*{20}c} {} \\ \end{array} t]^{T} \) is the design variables.

5.2 Process of multi-objective optimization design

Isight software was employed to optimize the fine-tuning parallel manipulator. Global operating dexterity was determined with MATLAB. Isight can be integrated with MATLAB to solve the parameters (Cui et al. 2013). The flowchart is shown in Fig. 4. In the optimization component, NSGA-II was selected as the optimization algorithm. Population size was set to 12 and the genetic algebra to 30.

Fig. 4
figure 4

Flowchart of multi-objective optimization

5.3 Determination of the optimum global operating dexterity solution

The Pareto solutions of multi-objective optimization are shown in Fig. 5. The figure shows that kinematic and dynamic dexterity are conflicting, namely, increasing dynamic dexterity decreases kinematic dexterity. The Pareto optimal solutions cannot always satisfy all the objectives. Therefore, the decision makers should select a compromise solution according to the actual needs. Figure 5 was selected as the solution in this study according to the practical requirement; its values are shown in Table 1.

Fig. 5
figure 5

Pareto frontier

Table 1 Comparison of data before and after optimization

Table 1 shows that global kinematic dexterity increased by 13.8 % and dynamic dexterity increased by 2.23 % compared with the previous values. The performance of these two clearly improved after optimization.

6 Analysis of the operating dexterity of the manipulator

6.1 Analysis of local operating dexterity

Local operating dexterity is shown in Fig. 6. The segment and moving platform are connected together, and the reachable region for the center of the segment is the reachable region of the parallel manipulator. Figure 6a, c present the kinematic and dynamic dexterity indices that have a distribution in the reachable workspace. Figure 6b, d show the kinematic and dynamic dexterity indices. Orientation angles \( \alpha \), \( \beta \), and \( \gamma \) change in the reachable workspace; the color in the figures indicates the magnitude of their corresponding values.

Fig. 6
figure 6

Distribution of the local operating dexterity of the parallel fine-tuning manipulator

The ranges of local kinematic and dynamic dexterity in the working process are \( 0.357 \le \kappa_{J} \le 0.982 \) and \( 0.506 \le \kappa_{M} \le 0.530 \) according to Fig. 6. The maximum values of local operating dexterity are shown in Table 2.

Table 2 Location of the maximum value of local operating dexterity

The larger local kinematic dexterity is, the better the transmission of the manipulator is. As shown in Fig. 6a, b, when the color becomes darker, the kinematic performance improves. According to Table 2, when the manipulator is in \( (0\begin{array}{*{20}c} , \\ \end{array} 0\begin{array}{*{20}c} , \\ \end{array} 967.4) \) or when \( \alpha = 0 \), \( \beta = 0 \), and \( \gamma = 0.13963 \), local kinematic performance is the best one and the kinematic dexterity of the manipulator is \( \kappa_{J} = 0.982 \).

High local dynamic dexterity indicates good acceleration. As shown in Fig. 6c, d, when the color becomes close to dark red, the dynamic performance improves. When the manipulator is in (–116.32,205.08,938.23), (116.32,205.08,938.23), (–116.32, –205.08,938.23), and (116.23,–205.08,938.23) or when \( \alpha \), \( \beta \), and \( \gamma \) are at the edge of their range, the local dynamic performance improves and the four maximum positions of dynamic dexterity are symmetric.

The good and poor dynamic performance regions in the workspace can be obtained from Fig. 6. In the reachable workspace, the range of local kinematic dexterity is \( 0.357 \le \kappa_{J} \le 0.982 \) and that of local dynamic dexterity is \( 0.506 \le \kappa_{M} \le 0.530 \). This condition indicates that the manipulator has good transmission and acceleration performance.

6.2 Determination of the optimum region based on operating dexterity

According to the distribution of the operating dexterity indices in the workspace of the manipulator, the optimum region for the manipulator can be determined based on the performance indices’ range of operating dexterity. The optimum region is defined in this study as that where local kinematic dexterity index \( \kappa_{J} \) is larger than global kinematic dexterity index \( \eta_{J} \) and local dynamic dexterity index \( \kappa_{M} \) is larger than global dynamic dexterity index \( \eta_{M} \). In other words, the local operating dexterity indices of the manipulator in the optimum region are in the range of

$$ \left\{\begin{aligned} & \kappa_{J} \ge \eta_{J} = 0.6858 \hfill \\ & \kappa_{M} \ge \eta_{M} = 0.5160 \hfill \\ \end{aligned} \right.. $$

Figure 7 shows the optimum region and the distribution of the local operating dexterity indices. Considering kinematic and dynamic dexterity, the optimum region for the parallel fine-tuning manipulator is

$$ \left\{ \begin{aligned} & 0.68587 \le \kappa_{J} \le 0.90044 \hfill \\ & 0.51606 \le \kappa_{M} \le 0.52859 \hfill \\ \end{aligned} \right.. $$
Fig. 7
figure 7

Distribution of the local operating dexterity of the parallel fine-tuning manipulator in the optimal work region

The optimal design for the manipulator is one that allows the manipulator to work in the optimum region to acquire good transmission and acceleration performance. Likewise, it should meet the requirements to improve the control precision and efficiency of the segment assembly robot.

7 Conclusion

This study investigated the operating dexterity of a 3-DOF fine-tuning manipulator for segment assembly robots in shield tunneling machines. The operating dexterity performance indices, including kinematic and dynamic dexterity, were defined for the manipulator by considering motion transmissibility and accelerating capability. Using these operating dexterity performance indices as objectives, multi-objective optimization and dimensional synthesis for the parallel manipulator were implemented with Isight software. An optimal solution was selected from the Pareto optimal solution set. Performance evaluation of the operating dexterity of the optimal parallel manipulator was performed, and the optimum region was established. The optimization method can provide all possible design solutions and enable the designer to adjust the solutions flexibly according to practical design requirements. The multi-objective optimal design method introduced in this study can also be applied to the design of other orientation fine-tuning manipulators or mechanisms.