01.12.2020 | Review | Ausgabe 1/2020 Open Access

# A Survey of Mathematical Tools in Topology and Performance Integrated Modeling and Design of Robotic Mechanism

- Zeitschrift:
- Chinese Journal of Mechanical Engineering > Ausgabe 1/2020

## 1 Introduction

Mechanism, serving as the execution unit, is one of the essential subsystems of robot. The development of robot meeting the requirements from application scenarios depends largely on the analysis and design of robotic mechanism, which focus on topology and performance [
1,
2]. Topology denotes the mechanical structure of the robotic mechanism. Topology analysis and design, also named as type synthesis, arrange the limbs and joints according to the demands on mechanism mobility, including number, sequence, type and axis (or direction) [
3,
4]. Performance describes the output motion or/and force of the robotic mechanism. Performance analysis studies the kinematic, stiffness or dynamic mappings between joint space and operated space [
5,
6], and performance design searches for the optimal parameters to guide the prototyping based on the task requirements [
7,
8]. Conventionally, type synthesis, performance analysis and design of robotic mechanism are carried out in sequence [
9]. This development procedure is to firstly invent the topological structures, select one type, build the performance models, and finally implement the optimal design. In this process, however, the type synthesis and performance design were separately implemented. The disconnection between topology and performance models leads to: (1) the difficulty in choosing particular topological structure as the performance features are usually regarded as the selecting criteria, and (2) the failure in concerning mechanism types in the optimal design since different topological structures behave differently. Therefore, it has long been a desire to unify the topology and performance analysis and design of robotic mechanisms.

Motion is the property considered in every stage of the development procedure, which is divided into two categories: finite and instantaneous motions [
10,
11]. When a robotic mechanism moves along a continuous path, finite motion describes the total movement of the mechanism with respect to the initial pose [
10], and instantaneous motion evaluates the velocity (acceleration, jerk, etc.) of the mechanism at current pose [
11]. Literature review shows that type synthesis starts from predefined mobility described either by motion pattern based on finite motion computations [
12,
13] or by constraint analysis based on instantaneous motion properties. Kinematic, stiffness and dynamic performance of the robotic mechanism relates directly to the displacement, velocity and acceleration mappings, which are analyzed either at finite motion or instantaneous motion level. It indicates that the finite and instantaneous motion description and computation are the fundamental preparation for the development of robotic mechanism. Hence, a unified mathematical framework for the finite and instantaneous motions is essential for the integrated topology and performance analysis and design.

Anzeige

The unified mathematical framework involves the analytical description, algebraic computation and mapping relations of the finite and instantaneous motions. The computations include mainly composition and intersection of motions. Composition is the operation for the accumulation of motions that can be the successive motions of a rigid body or the resulted motion by several rigid bodies connected by joints. For instance, the finite/instantaneous motion of a serial mechanism is calculated by the composition of finite/instantaneous motions of joints [
14]. Intersection is to obtain the common part of different motions. Such operation is applied in the occasion like the finite motion of parallel mechanism whose calculation is performed by the intersection of finite motions of limbs [
15]. Specially, the mapping relation of the finite and instantaneous motions is of vital importance because it is the main reason for the disconnection between topology synthesis and performance analysis of robotic mechanisms. So far, there are three mathematical tools that have been applied to the descriptions, computations and mappings of finite and instantaneous motions, i.e. matrix Lie group and Lie algebra [
16], dual quaternion and pure dual quaternion [
17], finite screw and instantaneous screw [
18].

In the matrix Lie group, a special Euclidean group consisting of a rotation matrix and a translation vector is denoted by SE(3), whose element is rewritten into a homogenous matrix. The linear transformation can be implemented in a homogenous form, resulting in describing any finite motion by an element of the matrix representation of SE(3) [
16]. By exploring the computation rules, matrix Lie group was introduced to the mobility analysis [
19–
21] and type synthesis of mechanism [
22–
27]. The matrix form of Lie algebra se(3) was employed to describe instantaneous motion of mechanisms. There exists an exponential map between matrix representations of SE(3) and se(3) [
28].

Dual quaternion is the extension of quaternion from real number to dual number. The composition and intersection operations are investigated, allowing the dual quaternion being used in displacement modeling of mechanism [
29]. Pure dual quaternion, the dual vector, describes instantaneous motion, which was adopted to the kinematics [
30] and dynamics [
31]. There is an exponential map between the dual quaternion and pure dual quaternion [
32].

Finite screw is proposed to describe the finite motion of rigid body in the framework of screw theory [
33]. A screw triangle product [
34] was defined to accomplish the composition, and the algebraic method [
35] to perform the intersection of finite motions was investigated, which are employed in the type synthesis of mechanism [
36]. Instantaneous screw was described as the twist of rigid body in the beginning [
34]. Twist and wrench, known as the infinitesimal displacement and external force, are widely applied to the kinematic [
37,
38], stiffness [
39,
40], dynamic analysis and design [
41–
43] of mechanisms. It has been rigorously proved that a differential map exists in the finite and instantaneous screws.

Anzeige

Although these three mathematical tools have been applied at different stages of mechanism development, their capabilities in unifying the topology and performance analysis and design have not been realized. Aiming at helping designers find out effective methods in implementing integrated analysis and design so as to meet different requirements, this paper provides a comprehensive review on the mathematical tools for this topic. The paper is organized as follows. In Section
2, motions in integrated topology and performance modeling and design is discussed. Section
3 to
5 introduce the matrix Lie group and Lie algebra, dual quaternion and pure dual quaternion, finite screw and instantaneous screw, respectively, including history of development, description, computations and mapping relations of finite and instantaneous motions. A comparison of the three mathematic frameworks is illustrated from the view of algebraic structures in Section
6 following with the applications of unified mathematic tools in integrated topology and performance modeling and design. The conclusions are drawn in Section
7.

## 2 Relationship between Development of Robotic Mechanism and Motions

It is a long-term challenge to unify the topology and performance modeling and design in the development of robotic mechanism. To address this problem, an integrated mathematical framework should be prepared, for which the relationship between topology/performance and motions is firstly analyzed.

Topology, considered as the skeleton of a robot, includes the numbers and types of kinematic limbs as well as the adjacency and incidence among kinematic joints [
44]. One particular topology corresponds to a motion pattern of the robot. Hence, type synthesis is to obtain all the possible topologies according to the expected motion pattern. The description of expected motion patterns can be classified into two formats [
45,
46]. One takes the finite motion form, which expresses the displacement of the robot from the initial pose to another. Referred to the summary of the generalized procedure of type synthesis by Gao [
47], the available limbs are generated by the composition and intersection operations of finite motions. The other methods begin with the instantaneous motion description. Instantaneous motion is the infinitesimal motion of the robot at the given moment. Composition operation of instantaneous motions is the basis to get the available limbs and assembly conditions in the type synthesis of robotic mechanisms. Therefore, the topology model is related with the description and calculation of finite or instantaneous motion.

Performance determines the behavior of robots in practical application. Denoted by finite and instantaneous motions, the performances of a robot can be categorized by displacement, velocity and acceleration. The displacement model of the robotic mechanism is sometimes interpreted as forward or inverse kinematics, which focuses on the mapping between the displacements of actuations and the pose of the end-effector [
48]. The displacement model is constructed and calculated by the finite motions. For example, the displacement model of a serial mechanism is built by the composition of finite motions of each kinematic joint. In the case of parallel mechanisms, both composition and intersection operations of the finite motions are involved. With the displacement model, the reachable workspace of the robot can also be analyzed. The next level of performance, i.e., the velocity of robotic mechanism, is described and calculated by instantaneous motion, because both instantaneous motion and velocity denote the infinitesimal motion at given pose. The velocity and force mapping between joint space and operated space lay the foundation of the kinematic performance analysis of serial and parallel mechanisms, which are carried out by the composition and intersection of instantaneous motions of joints and limbs. Regarding the static deformation as the perturbation of displacement, stiffness can be classified as the performance at velocity level. The stiffness modeling and analysis also rely on the composition and intersection of instantaneous motions. Finally, the performance at acceleration level refers to the dynamics, in which the velocity, acceleration and forces of the robotic mechanisms are involved. Since acceleration model is obtained by the first-order of velocity model, the performance at acceleration level are analyzed by instantaneous motions. In summary, the performance model is formulated by the description and calculation of finite or instantaneous motion.

From the above analysis, it is concluded that the topology and performance of robotic mechanisms are completely reflected by finite and instantaneous motions. Therefore, the kernel of the integrated modeling lies in the algebraic derivation between finite and instantaneous motions. Because of intrinsic connections between displacement and velocity, finite and instantaneous motions could be connected by differential and integral mappings. In this manner, if the finite motion of a continuous path is known, the instantaneous motion at the given pose could be derived, and vice versa. The composition and intersection operations of the resultant finite and instantaneous motions can also be connected, which is beneficial for implementing the integrated topology and performance modeling and design of robotic mechanism. However, these mappings cannot be performed when topology and performance models are established by different mathematical tools. Consequently, a unified mathematic framework for finite and instantaneous motions is essential for the integrated modeling.

As illustrated in Figure
1, the description, computation and mapping of finite and instantaneous motions involving in integrated modeling should be covered in a unified mathematic framework. Till now, there are three mathematical tools that have been applied, including matrix Lie group and Lie algebra, dual quaternion and pure dual quaternion, finite screw and instantaneous screw. To provide an algebraic foundation of integrated modeling and design, these unified mathematic tools are reviewed in terms of the topics in the following sections, respectively.

×

## 3 Matrix Lie Group and Lie Algebra Based Method

Among the three methods applied in topology and performance integrated modeling and design of robotic mechanisms, i.e., matrix Lie group and Lie algebra based method, dual quaternion and pure dual quaternion based method, finite screw and instantaneous screw based method, the matrix based method is introduced in this section. At first, the developments on the applications of matrix Lie group and Lie algebra in robotic mechanisms are reviewed in detail, which is followed by the introductions on their expressions and computations. Based upon these, the exponential and differential mappings between them are illustrated.

### 3.1 Matrix Lie Group and Lie Algebra

When rotation and translation are respectively described by linear transformation and translation vector, each 6-dimensional finite motion in 3-dimensional space is thus represented as a pair of 3-dimensional orthogonal matrix and vector. In this way, the entire set of finite motions forms a Lie group under motion composition, which is called the special Euclidean group (SE(3)). Correspondingly, when 3-dimensional skew-symmetric matrix and vector are used to respectively describe angular and linear velocities, the entire set of 6-dimensional instantaneous motions constituted by the pairs of velocities form the Lie algebra se(3) of SE(3).

The matrix Lie group and Lie algebra are originated from the Erlangen program proposed by Klein [
16] in the late 19th century, from then, the pairs in SE(3) and se(3) are rewritten into homogenous matrices. Both finite motion and instantaneous motion can be expressed in homogenous forms, resulting in that any finite motion is described by an element in the matrix representation of SE(3), and that any instantaneous motion is described by an element in the matrix representation of se(3).

It was Hervé [
19] who introduced the matrix Lie group into mobility analysis of mechanisms. In the 1980s and 1990s, he had been investigating description and calculation of mechanism displacement by the sub-groups of SE(3) [
20,
49,
50]. The application of matrix Lie group in geometry and kinematics of mechanisms was discussed. On this basis, Hervé and Sparacino [
51] employed matrix Lie group to the type synthesis (structure synthesis) of parallel mechanisms. This work was later developed by Li and Hervé [
7,
8,
10,
26,
52], Lee and Hervé [
53–
56]. Owing to their efforts, a systematic type synthesis method by matrix Lie group was proposed. Specially, Li introduced the sub-manifolds of SE(3) as the extension of sub-groups to describe the displacements of parallel mechanisms and their limbs. Many novel parallel mechanisms were invented, including five degree-of-freedom (DoF) parallel mechanisms that could not be synthesized due to the lack of 5-dimensional sub-groups of SE(3). Besides applying matrix Lie group to type synthesis, Fanghella and Galletti [
57,
58] discussed the approximate computation algorithms of matrix Lie group. Composition of two sub-groups was computed by their minimum envelope group, while the intersection of two sub-groups was performed by searching for the maximum common group. All possible cases of sub-group composition and intersection were listed. This computation method is different from the analytical algorithms in Baker-Campbell-Hausdorff formula [
59,
60] and is easier to be directly applied. Meng [
61] also engaged in giving the clear intersection algorithms of sub-groups. They obtained the intersection of Lie sub-groups by solving the intersection of the corresponding Lie sub-algebras. In their work, the matrix form of Lie algebra se(3) was employed to describe instantaneous motion of mechanisms. The similar method was employed by Wu [
62–
64] in type synthesis of quotient mechanisms, and by Liu [
65] in type synthesis of mechanisms with adjoint-invariant sub-manifolds of SE (3). All these contributions lead to the topology modeling by using matrix Lie group and its sub-sets. In 1983, Brockett [
28,
66] established the framework of matrix Lie group and Lie algebra for mechanism modeling and analysis. By investigating the exponential mapping between matrix representations of SE(3) and se(3), he set up the connection between finite and instantaneous motions of mechanisms. His work was further extended by Li [
67–
69], Park [
70–
72], Chen [
73–
75], Chen [
76–
78] and their colleagues, leading to an integrated framework for kinematics, dynamics, calibration, and control of mechanisms.

### 3.2 Matrix Lie Group and Its Computations

As introduced in Section
2.1, the matrix representation of SE(3) is the entire set of homogeneous matrices that describe all the linear transformations in the Euclidean space. This matrix Lie group can be used to describe all the finite motions of a rigid body or a mechanism. Hence, the finite motion description based upon matrix Lie group can be expressed as,
where SO(3) denotes the special orthogonal group consisting of the orthogonal matrices that describe rotations,
\( {\mathbb{R}}^{3} \) denotes the 3-dimensional vector space,
\( \varvec{R} \) is an arbitrary element in SO(3) which represents the rotation matrix about the Chasles’ axis,
\( \varvec{t} \) is the translation vector along that axis.
\( \varvec{R} \) and
\( \varvec{t} \) involve the Chasles’ axis
\( \left( {\begin{array}{*{20}c} {\varvec{s}_{f}^{\text{T}} } & {\left( {\varvec{r}_{f} \times \varvec{s}_{f} } \right)^{\text{T}} } \\ \end{array} } \right)^{\text{T}} \) together with the corresponding rotational angle
\( \theta \) and translational distance
\( t \). The expressions of
\( \varvec{R} \) and
\( \varvec{t} \) can be referred to Ref. [
28], as
where
\( \varvec{E}_{3} \) is a three-order unit matrix,
\( \tilde{\varvec{s}}_{f} \) is the skew-symmetric matrix that denotes the cross product of
\( \varvec{s}_{f} \).
\( \varvec{r}_{f} \) expresses the position vector of the Chasles’ axis.

$$ \text{SE}\left( 3 \right) = \left\{ {\varvec{g}\left| {\varvec{g} = \left[ {\begin{array}{*{20}c} \varvec{R} & \varvec{t} \\ {\mathbf{0}} & 1 \\ \end{array} } \right], \, \varvec{R} \in \text{SO}\left( 3 \right), \, \varvec{t} \in {\mathbb{R}}^{3} } \right.} \right\}, $$

(1)

$$ \varvec{R} = \varvec{E}_{3} + \sin \theta \tilde{\varvec{s}}_{f} + \left( {1 - \cos \theta } \right)\left( {\tilde{\varvec{s}}_{f} } \right)^{2} , $$

(2)

$$ \varvec{t} = \left( {\varvec{E}_{3} - \varvec{R}} \right)\left( {\varvec{r}_{f} - \varvec{s}_{f}^{\text{T}} \varvec{r}_{f} \varvec{s}_{f} } \right) + t\varvec{s}_{f} , $$

(3)

When the matrix Lie group theory is applied in topology modeling and analysis of robotic mechanisms, the finite motion generated by each 1-DoF joint can be described by a 1-dimensional sub-group of SE(3). Following this manner, the motion of each limb is the composition of all its joints’ motions, and the mechanism motion is the intersection of the limbs’ motions.

The composition of matrix Lie sub-groups is performed by matrix multiplication. This is because any Lie sub-group can be regarded as the composition of several 1-dimensional sub-groups. Hence, the composition of finite motions can be expressed by the multiplication of a sequence of 1-DoF finite motions as,
where
\( \varvec{M}_{k} \) (
\( k = 1,2, \ldots ,\;n \)) denotes the 1-dimensional sub-group that describes the
kth finite motion in the sequence.

$$ \varvec{M} = \varvec{M}_{n} \cdots \varvec{M}_{2} \varvec{M}_{1} , $$

(4)

Consider that the elements in each 1-dimensional sub-group can be expressed by exponential expressions,
\( \varvec{M}_{k} \) can be obtained as
where
\( \tilde{\varvec{\xi }}_{f,k} \) is the homogenous matrix that represents the Chasles’ axis that corresponds to
\( \varvec{M}_{k} \) and a pitch, as

$$ \varvec{M}_{k} = \left\{ {\left. {e^{{\theta_{k} \tilde{\varvec{\xi }}_{f,k} }} } \right|\theta_{k} \in {\mathbb{R}}} \right\}, $$

(5)

$$ \tilde{\varvec{\xi }}_{f,k} = \left[ {\begin{array}{*{20}c} {\tilde{\varvec{s}}_{f,k} } & {\varvec{r}_{f,k} \times \varvec{s}_{f,k} + \frac{{t_{k} }}{{\theta_{k} }}\varvec{s}_{f,k} } \\ {\mathbf{0}} & 0 \\ \end{array} } \right]. $$

(6)

Taking the exponential form, Eq. (
4) can be rewritten as,

$$ \varvec{M} = \left\{ {\left. {e^{{\theta_{n} \tilde{\varvec{\xi }}_{t,n} }} \cdots e^{{\theta_{2} \tilde{\varvec{\xi }}_{t,2} }} e^{{\theta_{1} \tilde{\varvec{\xi }}_{t,1} }} } \right|\theta_{1} ,\theta_{2} , \ldots ,\theta_{n} \in {\mathbb{R}}} \right\}. $$

(7)

In order to obtain the expansion form of Eq. (
7), the Baker-Campbell-Hausdorff formula is employed. The composition of two 1-DoF finite motions could be performed as,
where

$$ e^{{\theta_{k + 1} \tilde{\varvec{\xi }}_{f,k + 1} }} e^{{\theta_{k} \tilde{\varvec{\xi }}_{f,k} }} = e^{{f\left( {\theta_{k + 1} \tilde{\varvec{\xi }}_{f,k + 1} ,\theta_{k} \tilde{\varvec{\xi }}_{f,k} } \right)}} , $$

(8)

$$\begin{aligned} f\left( {{\theta _{k + 1}}{{\tilde {\varvec{\xi }}}_{f,k + 1}},{\theta _k}{{\tilde {\varvec{\xi }} }_{f,k}}} \right) & = {\theta _k}{{\tilde {\varvec{\xi }} }_{f,k}} + {\theta _{k + 1}}{{\tilde {\varvec{\xi }} }_{f,k + 1}} + \frac{1}{2}\left[ {{\theta _{k + 1}}{{\tilde {\varvec{\xi }} }_{f,k + 1}},{\theta _k}{{\tilde {\varvec{\xi }} }_{f,k}}} \right]\\ & \quad+ \frac{1}{{12}}\left( {\left[ {{\theta _{k + 1}}{{\tilde {\varvec{\xi }} }_{f,k + 1}},\left[ {{\theta _{k + 1}}{{\tilde {\varvec{\xi }} }_{f,k + 1}},{\theta _k}{{\tilde {\varvec{\xi }} }_{f,k}}} \right]} \right]} \right.\\ & \quad \left. { + \left[ {{\theta _k}{{\tilde {\varvec{\xi }} }_{f,k}},\left[ {{\theta _k}{{\tilde {\varvec{\xi }} }_{f,k}},{\theta _{k + 1}}{{\tilde {\varvec{\xi }} }_{f,k + 1}}} \right]} \right]} \right) + \cdots \end{aligned}$$

Herein,
\( \left[ {\theta_{k + 1} \tilde{\varvec{\xi }}_{f,k + 1} ,\theta_{k} \tilde{\varvec{\xi }}_{f,k} } \right] = \theta_{k} \theta_{k + 1} \left( {\tilde{\varvec{\xi }}_{f,k + 1} \tilde{\varvec{\xi }}_{f,k} - \tilde{\varvec{\xi }}_{f,k} \tilde{\varvec{\xi }}_{f,k + 1} } \right) \) is defined as the Lie bracket. It is found that algebraic computation becomes more complicated and difficult because of higher order items, especially for the cases of more than two motions.

Intersection of finite motions is the maximum common sub-group or sub-manifold contained in all motions. By using the property of the exponential expression in Eq. (
5), Meng [
20] partly solved this problem by mapping the intersection of the Lie sub-groups to Lie algebra level. Till now, intersection of finite motions by matrix Lie sub-groups and the composited manifolds (the product of several Lie sub-groups) is mainly based upon specific principles, such as the cases given by Fanghella and Galletti [
16,
17]. However, these operations are difficult to implement in an analytical manner and be applied for all the motion patterns. There is no generic intersection algorithm for matrix Lie sub-groups and the composited manifolds yet.

### 3.3 Matrix Lie Algebra and Its Computations

As the counterpart of matrix Lie group SE(3), its matrix Lie algebra se(3) is employed to describe the instantaneous motions of robotic mechanisms, as
where
ω and
ν are angular and linear velocities in 3-dimensional vector forms.

$$ {\text{se}}\left( 3\right) = \left\{ {\omega \tilde{\varvec{\xi} }_{t} |\omega \tilde{\varvec{\xi} }_{t} = \left( {\begin{array}{*{20}c} {\tilde{\varvec{\omega }}} &\varvec{\nu}\\ {\mathbf{0}} & 0 \\ \end{array} } \right),\quad\varvec{\omega},\varvec{\nu}\in {\mathbb{R}}^{3} } \right\}, $$

(9)

Any element in se(3) can be rewritten into vector form as
where
\( {\varvec{\xi}}_{t} \) is the normalized unit velocity,
ω is its amplitude, and
p

$$ (\begin{array}{*{20}c}\varvec{\omega}&\varvec{\nu}\\ \end{array} )^{\text{T}} = \omega {\varvec{\xi}}_{t} , $$

(10)

$$ {\varvec{\xi}}_{t} = \left( {\varvec{s}_{t} \quad \varvec{r}_{t} \times \varvec{s}_{t} + p_{t} \varvec{s}_{t} } \right)^{\text{T}} , $$

(11)

_{t}denotes the pitch. \( \varvec{r}_{t} \) expresses the position of the Mozzi’s axis.
When the matrix Lie algebra theory is applied in performance modeling and analysis of robotic mechanisms, 1-dimensional sub-space of se(3) is employed to describe the instantaneous motion generated by 1-DoF joint. In this way, the composition of the motions of all joints in a limb leads to the limb motion, and the intersection of all the limbs’ motions results in the mechanism motion.

As is well known, se(3) is a 6-dimensional vector space. The composition of matrix Lie sub-spaces is performed by linear addition as,
where ‘
\( \oplus \)’ denotes the combination operation of linear vector spaces. The intersection of several sub-spaces can be obtained through linear computations, as
where
T

$$ \begin{aligned} \varvec{T} & = {\text{span}}\left\{ {\varvec{T}_{1} \cup \varvec{T}_{\text{2}} \cup \cdots \cup \varvec{T}_{n} } \right\} \\ & = \varvec{T}_{1} \oplus \varvec{T}_{\text{2}} \oplus \cdots \oplus \varvec{T}_{n} , \\ \end{aligned} $$

(12)

$$ \begin{aligned} \varvec{T} & = \varvec{T}_{1} \cap \varvec{T}_{\text{2}} \cdots \cap \varvec{T}_{n} \\ & = \left( {\varvec{T}_{1}^{{ \bot }} \oplus \varvec{T}_{2}^{{ \bot }} \cdots \oplus \varvec{T}_{n}^{{ \bot }} } \right)^{{ \bot }} , \\ \end{aligned} $$

(13)

_{1}, T_{2}, …, T_{n}denote n sub-spaces of se(3). The computations shown in Eqs. ( 12) and ( 13) are easy to be conducted because they both fall in the area of linear algebra.### 3.4 Mappings between Matrix Lie Group and Lie Algebra

According to the physical principle, finite motion (displacement) is the integral of instantaneous motion (velocity), and velocity is the differential of displacement. When the displacement and velocity are described by matrix Lie group and Lie algebra, a differential-exponential mapping can be formulated between them as follows,

$$ \begin{aligned} d\varvec{g} & = de^{{\theta \tilde{\varvec{\xi }}_{f} }} \\ & = \dot{\theta }\tilde{\varvec{\xi }}_{f} e^{{\theta \tilde{\varvec{\xi }}_{f} }} \\ & = \omega \tilde{\varvec{\xi }}_{f} e^{{\theta \tilde{\varvec{\xi }}_{f} }} , \\ \end{aligned} $$

(14)

$$ e^{{\theta \tilde{\varvec{\xi }}_{t} }} = \varvec{g} , $$

(15)

The interpretations on the above two equations are given as follows:

(1)

The differential of
\( \varvec{g} \) at
θ = 0 is
\( \omega \tilde{\varvec{\xi }}_{f} \). As the Chasles’ axis is coincident with the axis of the velocity when
θ = 0, the differential of
\( \varvec{g} \) at
θ = 0 is an element of se(3). This is because se(3) is the tangent space of SE(3) at the identity element (the unit matrix).

(2)

The exponential of
\( \omega \tilde{\varvec{\xi }}_{t} \) with respect to the time results in
\( \varvec{g} \), which means that the exponential of any elements in se(3) with respect to the time leads to the elements in SE(3).

The differential-exponential mapping between matrix Lie group SE(3) and Lie algebra se(3) leads to the following 1-DoF case, as
and multi-DoF cases, as

$$ \begin{aligned} d\varvec{M}_{k} |\theta_{k} = 0 & = \left\{ {de^{{\theta_{k} \tilde{{\varvec{\xi}} }_{f,k} }} |\theta_{k} = 0} \right\} \\ & = \left\{ {\dot{\theta }_{k} \tilde{{\varvec{\xi}} }_{f,k} e^{{\theta_{k} \tilde{{\varvec{\xi}} }_{f,k} }} |\theta_{k} = 0} \right\} \\ & = \left\{ {\omega_{k} \tilde{{\varvec{\xi}} }_{t,k} |\omega_{k} \in {\mathbb{R}}} \right\} \\ & = \varvec{T}_{k} , \\ \end{aligned} $$

(16)

$$ \left\{ {e^{{\theta_{n} \tilde{{\varvec{\xi}} }_{f,n} }} |\theta_{k} \in {\mathbb{R}}} \right\} = \varvec{M}_{k} , $$

(17)

$$ \begin{aligned} & \left. {d\left( {\varvec{M}_{n} \cdots \varvec{M}_{2} \varvec{M}_{1} } \right)} \right|_{{\theta_{k} = 0, \, k = 1,2, \ldots ,n}} \hfill \\ & \quad= \left\{ {\left. {d\left( {e^{{\theta_{n} \tilde{{\varvec{\xi}} }_{f,n} }} \cdots e^{{\theta_{2} \tilde{{\varvec{\xi}} }_{f,2} }} e^{{\theta_{1} \tilde{{\varvec{\xi}} }_{f,1} }} } \right)} \right|_{{\theta_{k} = 0, \, k = 1,2, \ldots ,n}} } \right\} \hfill \\ & \quad = \left\{ {\left. {\omega_{1} \tilde{{\varvec{\xi}} }_{t,1} + \omega_{2} \tilde{{\varvec{\xi}} }_{t,2} + \cdots + \omega_{n} \tilde{{\varvec{\xi}} }_{t,n} } \right|\omega_{k} \in {\mathbb{R}}, \, k = 1,2, \ldots ,n} \right\} \hfill \\ & \quad= \varvec{T}_{1} \oplus \varvec{T}_{2} \oplus \cdots \oplus \varvec{T}_{n} , \hfill \\ \end{aligned} $$

(18)

$$ \left\{ {\left. {e^{{\theta_{n} \tilde{{\varvec{\xi}} }_{t,n} }} \cdots e^{{\theta_{2} \tilde{{\varvec{\xi}} }_{t,2} }} e^{{\theta_{1} \tilde{{\varvec{\xi}} }_{t,1} }} } \right|\theta_{1} ,\theta_{2} , \ldots ,\theta_{n} \in {\mathbb{R}}} \right\} = \varvec{M}_{n} \cdots \varvec{M}_{2} \varvec{M}_{1} . $$

(19)

## 4 Dual Quaternion and Pure Dual Quaternion Based Method

The review of dual quaternion and pure dual quaternion based method is provided in this section. Firstly, the application of this method in topology and performance modeling and design of robotic mechanisms is traced. Secondly, the basic formats together with their composition and intersection operations are discussed. Finally, the exponential/Cayley- differential maps between finite and instantaneous motions are constructed in the form of quaternionic algebras.

### 4.1 Dual Quaternion and Pure Dual Quaternion

As the representations of SE(3) and se(3), respectively, dual quaternion and pure dual quaternion are applied to describe the transformation from one pose to another and the velocity at any instant. Dual quaternion utilizes eight parameters by presenting a scalar with the cosine of half the dual angle [
17] and further six numbers by integrating the direction and position of the motion axis with the sine of half the dual angel. Herein, dual angle integrated the rotational angle and linear displacement by dual operator. Pure dual quaternion is also called dual vector, which includes six elements and is defined by means of the unit axis and amplitude of instantaneous motion.

The dual quaternion and pure dual quaternion based method can be traced back to Euler-Rodrigues’ parameters and Euler-Rodrigues’ formula [
79] in the 18th century. Hamilton [
80] and Rodrigues [
81] did some pioneering work in this field. Based on that, Clifford [
82] transformed rotation about an axis into translation parallel to the axis and proposed the concept of “biquaternion” in the investigation of geometry and algebra. Biquaternion was then applied to motion description and termed as dual quaternion [
17].

It was pointed out the dual quaternion is the extension of quaternion from real number to dual number. According to the “transference principle” [
83,
84], the algorithms for quaternions can be applied to the algorithms for dual quaternions. In this way, the composition of two dual quaternions could be computed by quaternion multiplication [
85], i.e., Euler-Rodrigues’ formula with dual angles. As for the intersection algorithms, Sun [
86] employed analytical derivations to deal with the intersection of the sets of dual quaternions. Mechanism analysis by dual quaternion was implemented by McAulay [
87] for the first time who utilized dual quaternion to describe rigid body displacement. Later on, dual quaternion was used in the kinematics of mechanisms from a geometrical prospective by Refs. [
88,
89] and Blaschke [
90]. Kong studied the method for motion mode analysis of single-loop and closed-loop spatial mechanisms by formulating a set of kinematic loop equations based on dual quaternions [
91,
92]. It was proved in ref. [
93] that dual quaternions facilitate to avoid singularities in the analysis of finite motion. Besides robotic kinematics, joint stiffness identification and deformation compensation algorithms for serial robots were constructed [
94]. Apart from the applications of dual quaternion in finite motion description, pure dual quaternion (dual vector) was adopted to describe instantaneous motion. For instance, Yang and Freudenstein [
29,
95] combined both dual quaternion and pure dual quaternion to analyze the displacement and velocity of a spatial four-link mechanism. Similar researches on the mechanism kinematic analysis by dual quaternions can be found in [
30,
96,
97]. For the mechanism design, McCarthy et al. [
98,
99] formulated forward and inverse kinematic equations of spatial serial chains and proposed a semi-analytical design method. These kinematic equations are obtained by the exponential map between pure dual quaternion and dual quaternion. Selig [
32] built the dynamic model of mechanisms using quaternions [
31]. In his research, the Cayley map in dual quaternion theory was constructed concerning that the entire set of dual quaternions is a double cover of SE(3). The intrinsic connections between quaternion exponential map and Euler-Rodrigues’ formula were deeply investigated by Dai [
100], relating dual quaternions with other representations of SE(3). Taking advantages of these mappings, the integrated method was also used in calibration algorithms [
101,
102], path planning and control strategies [
103,
104]. Motivated by the arithmetic operations of dual quaternions, Cohen developed the concept of hyper dual quaternion currently, which was applied for the displacement and velocity modeling of serial mechanisms [
105].

### 4.2 Dual quaternion and its computations

The dual quaternion is the extension of quaternion from real number to dual number. Rotation axis and rotational angle in quaternion can be replaced with dual axis and dual angle. Thus, the 1-DoF finite motion is described by dual quaternion as
where
\( \hat{\theta } = \theta + \varepsilon t \) denotes the dual angle. It has the cosine and sine functions as
where
\( \varepsilon \) is the dual unit and
\( \varepsilon^{2} = 0 \).
\( \left( {} \right)^{ \wedge } \) in this paper denotes a vector in pure dual quaternion form.
\( \varvec{L}_{f}^{ \wedge } \) is the pure dual quaternion form of the Plücker coordinates of the Chasles’ axis, which can be denoted as
\( \varvec{L}_{f}^{ \wedge } = \varvec{s}_{f}^{ \wedge } + \varepsilon \varvec{r}_{f}^{ \wedge } \times \varvec{s}_{f}^{ \wedge } \). Herein,
\( \varvec{s}_{f}^{ \wedge } \) and
\( \varvec{r}_{f}^{ \wedge } \) are the unit direction dual vector and position dual vector of the Chasles’ axis.
where
\( s_{f,u} \) and
\( r_{f,u} \)
\( \left( {u = 1,2,3} \right) \) are scalar coefficients of Plücker coordinates.
\( \varvec{i} \),
\( \varvec{j} \),
\( \varvec{k} \) are plural units with the properties,

$$ \varvec{D} = \cos \frac{{\hat{\theta }}}{2} + { \sin }\frac{{\hat{\theta }}}{2}\varvec{L}_{f}^{ \wedge } , $$

(20)

$$ \cos \frac{{\hat{\theta }}}{2} = \cos \frac{\theta }{2} - \frac{t}{2}\sin \frac{\theta }{2}\varepsilon ,\quad \sin \frac{{\hat{\theta }}}{2} = \sin \frac{\theta }{2} + \frac{t}{2}\cos \frac{\theta }{2}\varepsilon , $$

$$ \varvec{s}_{f}^{ \wedge } = s_{f,1} \varvec{i} + s_{f,2} \varvec{j} + s_{f,3} \varvec{k} , $$

$$ \varvec{r}_{f}^{ \wedge } = r_{f,1} \varvec{i} + r_{f,2} \varvec{j} + r_{f,3} \varvec{k} , $$

$$ \varvec{i}^{2} = \varvec{j}^{2} = \varvec{k}^{2} = - 1,\quad \varvec{ij} = \varvec{k},\quad \varvec{ijk} = - 1. $$

(21)

For a serial mechanism or limbs in parallel mechanism, the finite motion generated by all 1-DoF joints can be solved by the composition operation, which can be rewritten utilizing quaternion multiplication [
80,
81],

$$ \varvec{D}_{12 \ldots n} = \varvec{D}_{n} \ldots \varvec{D}_{2} \varvec{D}_{1} , $$

(22)

$$ \varvec{D}_{12 \ldots n} = \varvec{D}_{n} \ldots \left( \begin{aligned} & \cos \frac{{\hat{\theta }_{1} }}{2}\cos \frac{{\hat{\theta }_{2} }}{2} + \cos \frac{{\hat{\theta }_{1} }}{2}\sin \frac{{\hat{\theta }_{2} }}{2}\varvec{L}_{f,2}^{ \wedge } \hfill \\ & + \sin \frac{{\hat{\theta }_{1} }}{2}\cos \frac{{\hat{\theta }_{2} }}{2}\varvec{L}_{f,1}^{ \wedge } \hfill \\ & + \sin \frac{{\hat{\theta }_{1} }}{2}\sin \frac{{\hat{\theta }_{2} }}{2}\varvec{L}_{f,2}^{ \wedge } \varvec{L}_{f,1}^{ \wedge } \hfill \\ \end{aligned} \right), $$

(23)

It is noted that the motion of moving platform in a parallel mechanism and that generated by each limb is in equilibrium. Therefore, having the analytical resultant motion of limbs at hand, the finite motion of the moving platform can be obtained by the intersection operation as,

$$ \varvec{D} = \varvec{D}_{1} = \varvec{D}_{2} = \cdots = \varvec{D}_{i} = \cdots = \varvec{D}_{m} ,\quad i = 1,2, \ldots ,m. $$

(24)

### 4.3 Pure Dual Quaternion and Its Computations

The velocity of the rigid body at any instant is specified by a dual vector, which connects two 3-D vectors by dual operator. In this way, the format of pure dual quaternion is introduced here
where
\( \varvec{L}_{t}^{ \wedge } = \varvec{s}_{t}^{ \wedge } + \varepsilon \varvec{r}_{t}^{ \wedge } \times \varvec{s}_{t}^{ \wedge } \) is the pure dual quaternion form of the Plücker coordinates of the Mozzi’s axis. Herein,
\( \varvec{s}_{t}^{ \wedge } \),
\( \varvec{r}_{t}^{ \wedge } \) are the unit direction dual vector and position dual vector of the Mozzi’s axis.
where
\( s_{t,u} \) and
\( r_{t,u} \)
\( \left( {u = 1,2,3} \right) \) are scalar coefficients of Plücker coordinates.

$$ \varvec{d} = \omega \varvec{L}_{t}^{ \wedge } + \varepsilon \omega p\varvec{s}_{t}^{ \wedge } , $$

(25)

$$ \varvec{s}_{t}^{ \wedge } = s_{t,1} \varvec{i} + s_{t,2} \varvec{j} + s_{t,3} \varvec{k} , $$

$$ \varvec{r}_{t}^{ \wedge } = r_{t,1} \varvec{i} + r_{t,2} \varvec{j} + r_{t,3} \varvec{k} , $$

The pure dual quaternions are Lie algebra elements with both well-defined addition and multiplication. Thus, when pure dual quaternion is applied in the performance modeling and design of robotic mechanisms, the composition and intersection operations can be performed as linear algebra, referring to Eq. (
12) and Eq. (
13), respectively.

### 4.4 Mappings between Dual Quaternion and Pure Dual Quaternion

Similar to matrix Lie group and Lie algebra, the exponential map and Cayley map exist from pure dual quaternion to dual quaternion, which are given by,

$$\begin{aligned} {e^{\hat \theta {\varvec{L}}_f^ \wedge }} & = \left( {1 - \frac{{{{\hat \theta }^2}}}{2} + \frac{{{{\hat \theta }^4}}}{2} + \cdots } \right) + \left( {1 - \frac{{{{\hat \theta }^3}}}{3} + \frac{{{{\hat \theta }^5}}}{5} + \cdots } \right){\varvec{L}}_f^ \wedge \\ & \quad = {\rm{cos}}\hat \theta + \sin \hat \theta {\varvec{L}}_f^ \wedge = \varvec{D}{{,}} \end{aligned}$$

(26)

$$\begin{aligned} {\text{Ca}}{{\text{y}}_{\varvec{D}}}\left( {{\varvec{L}}_f^ \wedge } \right) & = \frac{{1 + 2{{\left| {{\varvec{s}}_t^ \wedge } \right|}^2} - {{\left| {{\varvec{s}}_t^ \wedge } \right|}^4}}}{{{{\left( {1 + {{\left| {{\varvec{s}}_t^ \wedge } \right|}^2}} \right)}^2}}} + \frac{{2 + 4{{\left| {{\varvec{s}}_t^ \wedge } \right|}^4}}}{{{{\left( {1 + {{\left| {{\varvec{s}}_t^ \wedge } \right|}^2}} \right)}^2}}}{\varvec{L}}_f^ \wedge \\ & \quad+ \frac{2}{{{{\left( {1 + {{\left| {{\varvec{s}}_t^ \wedge } \right|}^2}} \right)}^2}}}{{\varvec{L}}{_f^ \wedge} ^2} + \frac{2}{{{{\left( {1 + {{\left| {{\varvec{s}}_t^ \wedge } \right|}^2}} \right)}^2}}}{{\varvec{L}}{_f^ \wedge }^3} = {\varvec{D}}{{.}} \end{aligned}$$

(27)

In the modeling process of robots, exponential map facilitates to connect the velocity and the possible displacements allowed by the joint. It would be convenient to formulate the topology or kinematic models of serial mechanisms or open-loop limbs by taking the axes and motion variables of joints in an analytical manner. Cayley map is always used in numerical methods since it does not need so many trigonometric function calls and will avoid cost consuming. For multi-DoF, the maps could be expanded as

$$ \left. {e^{{\hat{\theta }_{n} \varvec{L}_{f,n}^{ \wedge } }} \cdots e^{{\hat{\theta }_{2} \varvec{L}_{f,2}^{ \wedge } }} e^{{\hat{\theta }_{1} \varvec{L}_{f,1}^{ \wedge } }} } \right|_{{\theta_{1} ,\theta_{2} , \cdots ,\theta_{n} \in {\mathbb{R}}}} = \varvec{D}_{n} \cdots \varvec{D}_{2} \varvec{D}_{1} , $$

(28)

$$ {\text{Cay}}_{\varvec{D}} \left( {\varvec{L}_{f,n}^{ \wedge } } \right) \cdots {\text{Cay}}_{\varvec{D}} \left( {\varvec{L}_{f,1}^{ \wedge } } \right) = \varvec{D}_{n} \cdots \varvec{D}_{1} . $$

(29)

When the topology/displacement models are obtained at first, differential mapping between dual quaternion and pure dual quaternion would help to get the velocities. It could be executed by taking differentiations of dual quaternion
\( \varvec{D} \) with respect to time.

$$ \dot{\varvec{D}}\left| {_{{\hat{\theta } = 0}} } \right. = \left. {\dot{\hat{\theta }}\varvec{L}_{f}^{ \wedge } e^{{\hat{\theta }\varvec{L}_{f}^{ \wedge } }} } \right|_{{\hat{\theta } = 0}} = \varvec{L}_{f}^{ \wedge } = \varvec{L}_{t}^{ \wedge } . $$

(30)

It indicates that the time derivative of
\( \varvec{D} \) at the initial pose is exactly the corresponding pure dual quaternion
\( \varvec{L}_{t}^{ \wedge } \) at the instant
\( \hat{\theta } = 0 \). This rule is also proved in the multi-DoF cases,

$$ \begin{aligned} & \left. {d\left( {\varvec{D}_{n} \cdots \varvec{D}_{2} \varvec{D}_{1} } \right)} \right|_{{\hat{\theta }_{k} = 0, \, k = 1,2, \ldots ,n}} \hfill \\ & = \left. {d\left( {e^{{\hat{\theta }_{n} \varvec{L}_{f,n}^{ \wedge } }} \cdots e^{{\hat{\theta }_{2} \varvec{L}_{f,2}^{ \wedge } }} e^{{\hat{\theta }_{1} \varvec{L}_{f,1}^{ \wedge } }} } \right)} \right|_{\begin{subarray}{l} \hat{\theta }_{k} = 0, \\ \, k = 1,2, \cdots ,n \end{subarray} } \hfill \\ & = \left. {\dot{\hat{\theta }}_{1} \varvec{L}_{f,1}^{ \wedge } + \dot{\hat{\theta }}_{2} \varvec{L}_{f,2}^{ \wedge } + \cdots + \dot{\hat{\theta }}_{n} \varvec{L}_{f,n}^{ \wedge } } \right|\dot{\hat{\theta }}_{n} \in {\mathbb{R}}, \, k = 1,2, \ldots ,n. \hfill \\ \end{aligned} $$

(31)

## 5 Finite Screw and Instantaneous Screw Based Method

In this section, integrated screw theory based method is presented beginning with the progress achieved in topology and performance modeling and design of robotic mechanisms. Then the description and computation of motions by finite and instantaneous screws are introduced. After that, the differential mapping between them is formulated.

### 5.1 Finite Srew and Instantaneous Screw

According to Chasles’s theorem [
10], a general rigid-body displacement could be described as a rotation about a line followed by a translation in the same direction as the rotation axis. Such a line is specified by the finite motion axis, a rotation angle, and a pitch. Motivated by this point, finite screw is invented to describe the finite motion in a 6-D quasi-vector format. Meanwhile, instantaneous motion could be expressed by the line in linear subspace, representing instantaneous motion axis with angular and linear velocities. Instantaneous screw was proposed based on spatial vectors with the definition of pitch. By this means, finite and instantaneous motions are depicted in the view of geometry by finite and instantaneous screws.

The finite screw and instantaneous screw based method origins from screw theory proposed in the 19th century. In the beginning, Chasles [
10] proposed the concept of twist motion of a rigid body. It was further developed by Poinsot and Plücker [
11], in which screw coordinates of infinitesimal displacement and external force were involved. They were named as twist and wrench, respectively. The reciprocal property of twist and wrench was later explored by Ball [
106] and Klein [
107,
108].

In the book “A treatise on the theory of screws” [
109], Ball discussed kinematics and dynamics of an arbitrary rigid body by screw theory. It laid a solid foundation for the mechanism analysis by Hunt [
110] who proposed the screw based kinematic and dynamic modeling method for serial, parallel and closed-loop mechanisms. Following Hunt’s work, substantial researches were carried out for the mechanism analysis and design based on instantaneous screw, such as type synthesis [
3,
45,
111], statics and kinetics [
112,
113], performance evaluation and optimization [
114,
115]. Besides the applications of instantaneous screw, finite screw, termed by Dimentberg [
116], was proposed to describe the finite motion of rigid body. On this track, the format of finite screw, including the pitch and amplitude, was intensively studied by Parkin [
117,
118], Hunt [
119], Dai [
33] and Huang [
120–
122]. Other than description of finite screw, the computation was another difficult problem. To this end, Roth [
123] defined screw triangle product to accomplish finite screw composition with the aid of Euler-Rodrigues’ formula. This definition had been widely accepted. From then on, many scholars focused on finding out concise algorithm for the screw triangle product [
124–
129]. Through the linear combination of two original screws, their translational parts and the screw along their common perpendicular, Huang [
130] simplified the screw triangle product. However, the nonlinear intersection of finite screws was analyzed in linear subspaces [
131], which leads to inappropriate results. In terms of the finite screw intersection, Sun [
18,
35,
36] presented an algebraic method. For the first time, Dai [
34] formulated the mapping between finite and instantaneous screws, and defined correlations among screw theory, matrix Lie group and quaternions [
132]. Based on the contribution of Dai, Sun [
18,
133] expanded the differential mapping to the analysis of spatial mechanisms. For the applications of finite screw to mechanism analysis, Huang [
120–
122] built the forward kinematic equations of some serial mechanisms. Sun and his colleagues [
133–
136] proposed a generic method to formulate motion equations for different types of mechanisms. Finite motion based type synthesis and instantaneous motion based kinematic analysis of parallel mechanisms are integrated by a consistent algebraic manner in their method.

### 5.2 Finite Screw and Its Computations

Finite motion description by screw directly reflect the Chasles’ axis together with the angular and linear displacements. The 1-DoF finite motion could be parameterized as finite screw in 6-dimensional quasi-vector form as
where
\( \varvec{s}_{f} \),
\( \varvec{r}_{f} \),
\( \theta \),
\( t \) have the same meanings as given in Eqs. (
2), (
3).

$$ \varvec{S}_{f} = 2\tan \frac{\theta }{2}\left( {\begin{array}{*{20}c} {\varvec{s}_{f} } \\ {\varvec{r}_{f} \times \varvec{s}_{f} } \\ \end{array} } \right) + t\left( {\begin{array}{*{20}c} {\mathbf{0}} \\ {\varvec{s}_{f} } \\ \end{array} } \right), $$

(32)

Composition operation of finite screws could be performed by screw triangle product signed as “
\( \vartriangle \)”. The composition of two 1-dimensional finite screws results in a linear combination of the two original screws, their translational parts and the screw along their common perpendicular. In this way, the analytical expression of the composited motion can be easily obtained in an approximately linear manner, which simplifies the nonlinear composition of finite motions
where
\( \varvec{S}_{f,1} {\vartriangle }\varvec{S}_{f,2} = \frac{1}{{1 - \tan \frac{{\theta_{1} }}{2}\tan \frac{{\theta_{2} }}{2}\varvec{s}_{f,2}^{\text{T}} \varvec{s}_{f,1} }}\left( \begin{aligned} \varvec{S}_{f,1} + \varvec{S}_{f,2} - \frac{1}{2}\varvec{S}_{fc,12} \hfill \\ - \varvec{S}_{fp,1} - \varvec{S}_{fp,2} \hfill \\ \end{aligned} \right), \)
\( \varvec{S}_{f,i} = 2\tan \frac{{\theta_{i} }}{2}\left( {\begin{array}{*{20}c} {\varvec{s}_{f,i} } \\ {\varvec{r}_{f,i} \times \varvec{s}_{f,i} } \\ \end{array} } \right) + t_{i} \left( {\begin{array}{*{20}c} {\mathbf{0}} \\ {\varvec{s}_{f,i} } \\ \end{array} } \right), \quad i = 1,2,\)

$$ \varvec{S}_{f,1 \cdots n} = \varvec{S}_{f,1} \vartriangle \varvec{S}_{f,2} \cdots \vartriangle \varvec{S}_{f,n} , $$

(33)

$$ \varvec{S}_{fc,12} = \left( {\begin{array}{*{20}c} {2\tan \frac{{\theta_{1} }}{2}\varvec{s}_{f,1} \times 2\tan \frac{{\theta_{2} }}{2}\varvec{s}_{f,2} } \\ \begin{aligned} \left( {2\tan \frac{{\theta_{1} }}{2}\varvec{r}_{f,1} \times \varvec{s}_{f,1} + t_{1} \varvec{s}_{f,1} } \right) \times 2\tan \frac{{\theta_{2} }}{2}\varvec{s}_{f,2} \hfill \\ + 2\tan \frac{{\theta_{1} }}{2}\varvec{s}_{f,1} \times \left( {2\tan \frac{{\theta_{2} }}{2}\varvec{r}_{f,2} \times \varvec{s}_{f,2} + t_{2} \varvec{s}_{f,2} } \right) \hfill \\ \end{aligned} \\ \end{array} } \right), $$

$$ \varvec{S}_{fp,1} = \tan \frac{{\theta_{1} }}{2}\tan \frac{{\theta_{2} }}{2}t_{2} \left( {\begin{array}{*{20}c} {\mathbf{0}} \\ {\varvec{s}_{f,1} } \\ \end{array} } \right),\quad \varvec{S}_{fp,2} = \tan \frac{{\theta_{1} }}{2}\tan \frac{{\theta_{2} }}{2}t_{1} \left( {\begin{array}{*{20}c} {\mathbf{0}} \\ {\varvec{s}_{f,2} } \\ \end{array} } \right). $$

Similar to the intersection algorithm of dual quaternions, the intersection of finite screws is achieved through formulating the simultaneous equations and solving the common range of the finite screw expressions

$$ \varvec{S}_{f,1} = \varvec{S}_{f,2} = \cdots = \varvec{S}_{f,i} = \cdots = \varvec{S}_{f,m} ,\quad i = 1,2, \ldots ,m. $$

(34)

### 5.3 Instantaneous Screw and Its Computations

Instantaneous motion description by screw directly reflect the Mozzi’s axis together with the amplitude of velocity. The instantaneous motion of rigid body could be parameterized as instantaneous screw in 6-D vector form as
where
\( \varvec{s}_{t} \),
\( \varvec{r}_{t} \),
\( \omega \) and
p have the same meanings as given in Eq. (
11).

$$ \varvec{S}_{t} = \omega \left( {\begin{array}{*{20}c} {\varvec{s}_{t} } \\ {\varvec{r}_{t} \times \varvec{s}_{t} + p\varvec{s}_{t} } \\ \end{array} } \right), $$

(35)

For robotic mechanism, the velocity of moving platform relative to the fixed platform forms a screw system, which is composed by a set of 1-DoF screws. In the process of performance modeling and design of robots, screw system plays an important role in mobility analysis and Jacobian formulation. For serial mechanisms, screw system could be measured as the combination of the instantaneous screws producing by each kinematic joint. When mechanisms with parallel structures, intersection operation of the screw systems generated by a series of connected chains is carried out. Due to the work of Rico and Duffy [
137–
139], screw systems were classified and proved to be subspaces, sometimes even sub-algebras of the Lie algebra se(3) of the Euclidean group SE (3). Therefore, the combination and intersection operation could be written as the form in Eq. (
12) and Eq. (
13), respectively.

### 5.4 Mappings between Finite and Instantaneous Screws

As far as we know, the exponential map does not exist between instantaneous screw and finite screw. That is because finite screw describes the displacement in a Gibson form, which break the linear transformation format of finite motion description of matrix Li Group and dual quaternion.

In spite of the lack of exponential map, differential map between displacement and velocity can be performed directly by taking differentiations of finite screw
\( \varvec{S}_{f} \) with respect to time. For 1-DoF or multi-DoF finite screw
\( \varvec{S}_{f} \), the corresponding instantaneous screw system would be formulated as

$$ \dot{\varvec{S}}_{f} \left| {_{\begin{subarray}{l} \theta = 0 \\ t = 0 \end{subarray} } } \right. = \dot{\theta }\left( {\begin{array}{*{20}c} {\varvec{s}_{f} } \\ {\varvec{r}_{f} \times \varvec{s}_{f} } \\ \end{array} } \right) + \dot{t}\left( {\begin{array}{*{20}c} {\mathbf{0}} \\ {\varvec{s}_{f} } \\ \end{array} } \right) = \varvec{S}_{t} , $$

(36)

$$ \begin{gathered} \left. {{\dot{\varvec{S}}}_{{f,12 \cdots n}} } \right|_{{\begin{array}{*{20}l} {\theta _{k} = 0} \\ {t_{k} = 0,k = 1,2, \cdots ,n} \\ \end{array} }} = \left. {{\dot{\varvec{S}}}_{{f,1}} } \right|_{{\begin{array}{*{20}c} {\theta _{1} = 0} \\ {t_{1} = 0} \\ \end{array} }} + \left. {{\dot{\varvec{S}}}_{{f,2}} } \right|_{{\begin{array}{*{20}l} {\theta _{2} = 0} \\ {t_{2} = 0} \\ \end{array} }} + \cdots + \left. {{\dot{\varvec{S}}}_{{f,1}} } \right|_{{\begin{array}{*{20}l} {\theta _{n} = 0} \\ {t_{n} = 0} \\ \end{array} }} \\ = {\varvec{S}}_{{t,1}} + {\varvec{S}}_{{t,2}} + \cdots + {\varvec{S}}_{{t,n}} . \\ \end{gathered} $$

(37)

## 6 Discussions

After respectively reviewing the three mathematical tools applied in topology and performance modeling and analysis of robotic mechanisms, further discussions on comparisons among them and their applications will be given in this section.

### 6.1 Comparisons among the Three Methods

Based upon Sections 3–5, it can be seen that the instantaneous screws, matrix Lie algebra, and pure dual quaternions for instantaneous motion description are all linear vector spaces, and their algebraic structures are isomorphic to each other. Thus, only the mathematical tools for finite motion description will be compared here. The differences among matrix Lie group, dual quaternions, and finite screws rise from their different algebraic structures. In order to discuss the differences of these three mathematical tools in describing rigid body finite motion, we firstly look into their algebraic structures and the relationships among them and SE(3).

Any transformation matrix in the matrix Lie group can be represented by a 4 × 4 real matrix, a 6 × 6 real matrix, or a 3 × 3 dual matrix etc. Because these three representations are isomorphic with each other, we take 4 × 4 real matrix representation as an example in Section
3. The entire set of each kind of these matrices has the same inner closure and associative properties with SE(3). Hence, the matrix Lie group forms a homomorphism of SE(3). Furthermore, it is an isomorphism of SE(3), since there exists a bijective mapping between them. The matrix Lie group is also a representation of SE(3). This is because the matrix operations play as linear transformations acting on the 6-dimensional vector space. Dual quaternions have similar features. Half part of the entire set of dual quaternions with positive rotational angles is also an isomorphism and a representation of SE(3). Thus, the entire set of dual quaternion is a double cover of SE(3). The transformation matrices in matrix Lie group can be composited by multiplication with linear transformation formats. The same operation can be performed by dual quaternions.

Different from transformation matrix and dual quaternion, finite screw is invented to break the linear transformation format of finite motion description, which can be regarded as a general form of Gibbs vector. Finite screw does not act on any vector space, and cannot transform any coordinate of geometric point or line. It is a mathematical tool purely for finite motion description, and it can express the basic elements of Chasles’ motion in a straightforward manner. The composition algorithm of finite screws, i.e., screw triangle product, maintains the screw format, which directly leads to the expressions of basic elements of the resultant Chasles’ motion. Although the entire set of finite screws under screw triangle product has the same inner closure and associative properties with SE(3), it is not a representation of SE(3). In other words, it only forms a isomorphism of SE(3).

Any element of SE(3) is a combination of rotation matrix and translation vector. It is a homogeneous transformation of the coordinates of points. In this way, all representations of SE(3) cannot break the inherent linear transformation formats. Hence, only finite screw with screw triangle product can express and composite finite motions in a non-redundant and direct manner.

All the three methods reviewed in Sections 3–5 could be used to describe and compute all situations of finite motions. To further investigate the relationships among them, we rewrite the element in dual quaternion in the following way,

$$ \begin{aligned} \varvec{D} & = \left( {\cos \frac{\theta }{2} - \varepsilon \frac{t}{2}{ \sin }\frac{\theta }{2}} \right) \\ & \quad + \left( {{ \sin }\frac{\theta }{2}\varvec{s}_{f} + \varepsilon \left( {{ \sin }\frac{\theta }{2}\left( {\varvec{r}_{f} \times \varvec{s}_{f} } \right) + \frac{t}{2}\cos \frac{\theta }{2}\varvec{s}_{f} } \right)} \right). \\ \end{aligned} $$

(38)

Compare the above equation and Eq. (
1)–(
3) with finite screw in Eq. (
32). It is noted that the information of a finite motion, i.e., the Chasles’ axis and the corresponding rotational angle and translational distance, is involved in the 3 × 3 rotation matrix and 3 × 1 translation vector in, and is not easy to be extracted. Hence, for elements in matrix Lie group, at least 12 items are needed to describe the 6-dimensional finite motion. For dual quaternion, 8 items are needed, and the dual vector in
\( \varvec{D} \) covers all the finite motion characteristics while the dual scalar is redundant. Finite screw contains the whole finite motion characteristics in the 6-dimensional quasi-vector form. Thus, it is non-redundant. Motion descriptions by finite screw are more concise. On this basis, the composition of two finite motions could be obtained by three cross product computations and their linear combination. The redundancy of matrix Lie group and dual quaternions results in more operations in the process of computing the composition and intersection of finite motions. In the whole, finite and instantaneous screw based method has the most concise formats to describe mechanism motions, and provides the most explicit algorithms for the computation.

### 6.2 Future Works on Applications of the Three Methods

From the discussion in previous sections, three unified mathematical tools are proved to have the abilities of description, computation and mapping of finite and instantaneous motions. With the aid of the unified mathematical frameworks, the integrated topology and performance modeling and design can be studied, which is meaningful but still rarely investigated in the current researches. Therefore, the next problem is how to apply the above mathematical tools to the integrated modeling and design. Since both the topology and performances are considered, the integrated modeling and design process can be interpreted as (1) finding out all possible topologies having the same desired mobility, (2) formulating the performances of every topological structure, and (3) searching for the optimal topology and performances. Having the above unified mathematical tools, type synthesis and performance modeling can be carried out in the same mathematical framework, as shown in Figure
2. For instance, type synthesis can be implemented by the finite motion based methods. By the mapping between finite and instantaneous motions, the performance model would be done by instantaneous motion based methods. Hence, both the topological and performance parameters can be defined in the optimal design.

×

The detail integrated modeling and design process might be conducted as follows. First of all, the expected motion is described in a finite motion format based on matrix Lie group, dual quaternion or finite screw. By taking the advantages of intersection and composition operations, the available limbs and mechanisms would be generated. More details are referred to [
35,
51,
86]. Because the type synthesis is implemented in an algebraic manner, the parameterized topology models are obtained. Then, the finite motion based topology model is directly applied as the displacement model relative to the initial pose. In order to construct the performance models with topology parameters, the differential mapping between matrix Lie group and Lie algebra, dual quaternion and pure dual quaternion, finite screw and instantaneous screw are utilized. In this way, the velocity model of 1-DoF kinematic joint, multi-DoF limbs and end-effector could be obtained in the forms of Lie algebra, pure dual quaternion and instantaneous screw, respectively. With the velocity model available at hand, the velocity/force features, stiffness performance can be further analyzed. By the first-order derivation of velocity, accelerations would be further formulated, with which the dynamic model is obtained. Up to this point, the integrated modeling for topology, kinematic, stiffness and dynamic is captured. Finally, both topological and dimensional parameters can be taken as design variables in optimal design, resulting in optimized topological structure with its dimensions.

Besides the methodology of integrated topology and performance modeling and design, another possible application of the reviewed mathematical tools is the automatic software development. It could be seen that every step of the integrated modeling and design is performed by algebraic expressions and computations, which facilitates this procedure to be realized in automatic manner using computer programming languages. By applying computation software like Matlab and Maple, composition, intersection and mapping algorithms of finite and instantaneous motions based on the three unified mathematic tools could be compiled as modularized programs. In this way, for given motion pattern, type synthesis can be automatically implemented to obtain all the feasible robotic mechanisms. The topology models are regarded as the displacement models. Then performance models in terms of velocity and acceleration can be directly constructed and analyzed by taking the first- and second-order derivation of its displacement model. The automatic software in the future work will improve the efficiency of integrated robot design and make the methods to be easily applied by the mechanical engineers without studying the mathematical knowledge.

## 7 Conclusions

Topology and performance of mechanism are the main focuses in the development of robotic mechanism. It has long been a desire to carry out the integrated analysis and design as topology and performance are mutually affected each other. A unified mathematical framework is the fundamental preparation. Three mathematical tools, i.e., Lie group and Lie algebra, dual quaternion and pure dual quaternion, finite screw and instantaneous screw, are comprehensively reviewed. The history, finite motion, instantaneous motion and the mapping relation of each mathematical tool are introduced, in which the description, computation and intersection of two types of motions are given. A discussion on the three mathematical tools is also presented. This paper aims at providing a reference on the mathematical tools in topology and performance integrated analysis and design, and helps reader select the appropriate method when implementing the analysis and design of robotic mechanisms.

## Acknowledgements

Not applicable.

### Competing Interests

The authors declare no competing financial interests.

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/.