Skip to main content
  • Original Article
  • Open access
  • Published:

Generalized Kinematics Analysis of Hybrid Mechanisms Based on Screw Theory and Lie Groups Lie Algebras

Abstract

Advanced mathematical tools are used to conduct research on the kinematics analysis of hybrid mechanisms, and the generalized analysis method and concise kinematics transfer matrix are obtained. In this study, first, according to the kinematics analysis of serial mechanisms, the basic principles of Lie groups and Lie algebras are briefly explained in dealing with the spatial switching and differential operations of screw vectors. Then, based on the standard ideas of Lie operations, the method for kinematics analysis of parallel mechanisms is derived, and Jacobian matrix and Hessian matrix are formulated recursively and in a closed form. Then, according to the mapping relationship between the parallel joints and corresponding equivalent series joints, a forward kinematics analysis method and two inverse kinematics analysis methods of hybrid mechanisms are examined. A case study is performed to verify the calculated matrices wherein a humanoid hybrid robotic arm with a parallel-series-parallel configuration is considered as an example. The results of a simulation experiment indicate that the obtained formulas are exact and the proposed method for kinematics analysis of hybrid mechanisms is practically feasible.

1 Introduction

As robotic technology evolves, various types of robots are introduced in our day-to-day life, and they are increasingly applied to assist humans in many different fields [1]. Currently, the research hotspots of robotics are still focused on the lightweight design and compliance control [2, 3]. However, although advanced control algorithms and drive technologies have expanded the application of robots, their further application is limited by the inherent characteristics of typical robots [4].

The serial mechanism with a large workspace and flexible movement is the typical configuration of robots [4]. The serial robot with joint actuators mounted exhibits a bulky mechanical structure, large moment of inertia, and low payload to weight ratio. When compared with the serial mechanism, the parallel mechanism exhibits several advantages of higher stiffness, higher payload to weight ratio, reduced inertia, and higher precision [5, 6]. Although the parallel mechanism effectively compensates for the shortcomings of serial mechanisms, it also exhibits the disadvantage of small working space. Therefore, hybrid mechanism, which exhibits the advantages of serial and parallel mechanisms, exhibits broad application prospects for a humanoid robotic configuration. The serial mechanism can provide a larger workspace for the end manipulator. The parallel mechanism can guarantee stronger stiffness, higher load capacity of the hybrid mechanism, and higher positioning precision of the end manipulator. Mustafa et al. [7] proposed a cable-driven humanoid robotic arm for the field of surgical instruments. Liu et al. [8] proposed a lightweight high-payload cable-driven serial–parallel manipulator based on the special tension-amplifying principle.

The Denavit–Hartenberg method [9, 10] is commonly used to design and analyze hybrid mechanisms. Li et al. [11] explored a better kinematic performance and design scheme for a novel mechanical leg. Pinskier et al. [12] investigated a four degrees-of-freedom (DOF) hybrid parallel–serial slave mechanism and developed a bilateral haptic controller to compensate for coupling and assembly errors. Liu et al. [13] examined a bionic flexible manipulator driven by pneumatic muscle actuator and designed a fuzzy torque control algorithm based on the computed torque method. Ling et al. [14] presented a kinetostatic modeling method for flexure-hinge-based compliant mechanisms with hybrid serial–parallel substructures for providing accurate and concise solutions by combining the matrix displacement method with the transfer matrix method. Hu [15] proposed a serial–parallel hybrid mechanism formed by two well-known Tricept parallel manipulators connected in serial and derived simple and compact formulae for the forward and inverse acceleration based on a vector approach. However, the Denavit–Hartenberg method involves several weaknesses including a singularity problem and difficulty in locating the immediacy of physical meaning in differential kinematics. Additionally, the existing studies rarely focus on the generalized kinematics analysis method applicable to hybrid mechanisms.

Conversely, screw theory [16], Lie groups, and Lie algebras [17] are useful mathematical tools and provide simplified symbolic representation that can be used to obtain geometric-intuitive kinematic analyses. Recently, in various extant studies, these mathematical tools were applied to robotic applications and the complicated methods were simplified. Li et al. [18] extended the method to kinematics analysis and derived the closed-solution of inverse kinematics for serial mechanisms. Dai et al. [19, 20] combined screw theory with Lie group algebra and summarized the related knowledge according to its relationship with mechanisms. Huang et al. [21] presented a systematic approach for the kinematic calibration of a 6-DOF hybrid polishing robot and formulated the linearized error model based on screw theory. Li et al. [22, 23] presented type synthesis of parallel mechanisms according to screw theory and Lie group. Sun et al. [24, 25] proposed a generalized method to solve inverse kinematics of serial and parallel mechanisms using a finite screw. Gabardi et al. [26] investigated the kinematics analysis of a 4-UPU fully parallel manipulator and performed the analysis of actuation Jacobian, constraint Jacobian, and singularity configurations via screw theory. Liu et al. [27, 28] analyzed the comprehensive interaction mechanism of motion-force transmissibility to the acceleration capacity of robots and used the performance atlases method to conduct parameters optimization for different types of parallel robots. Hence, it is feasible and tentative to propose a generalized method of kinematics analysis for hybrid mechanisms.

In our previous study [29], a novel 8-DOF hybrid manipulator is proposed to realize a kinematic function similar to that of the human arm, as shown in Figure 1. The humanoid shoulder joint (HSJ) adopts the spherical 5R parallel mechanism with 2-DOF, the humanoid elbow joint (HEJ) is a 3-DOF series mechanism, and the humanoid wrist joint (HWJ) adopts the spherical 3-RRP parallel mechanism with 3-DOF. The HSJ and HWJ realize the positioning of the upper limb, and the forearm and HWJ cooperate with the end manipulator to perform partial fine operations. Furthermore, a closed-form solution for the inverse displacement problem of the hybrid humanoid robotic arm (HRA) is derived. In this study, we focus on the application of screw theory, Lie groups, and Lie algebras in the field of kinematics analysis of hybrid mechanisms. This paper is organized as follows. In Section 2, the method of kinematics analysis is proposed for hybrid mechanisms. In Section 3, the method is illustrated via the example of the humanoid HRA. In Section 4, the accuracy of the proposed method is verified via a simulation experiment. Finally, the conclusions of the study are discussed in Section 5.

Figure 1
figure 1

Three-dimensional model of the HRA (left arm)

2 Kinematics Analysis of Mechanisms

According to the kinematics analysis of serial mechanisms, the basic principles of Lie operations in dealing with spatial switching and differential operations of screw vectors are briefly explained. Then, the generalized kinematics analysis of parallel and hybrid mechanisms is established. The detailed descriptions of screw theory, Lie groups, and Lie algebras are reported in previous studies [16, 17, 20].

2.1 Kinematics Analysis of Serial Mechanisms

The basic principles for kinematics analysis based on screw theory, Lie groups, and Lie algebras are shown in Figure 2, and the detailed derivation of formula is shown below.

Figure 2
figure 2

Relationship among screw theory, Lie groups, and Lie algebras

The Jacobian matrix of series kinematic chains can be obtained as follows:

$$\left\{ {\begin{array}{*{20}l} {{\varvec{J}}_{O} \left( {\varvec{\theta}} \right){ = }\left[ {\begin{array}{*{20}l} {{{\varvec{\xi}}}_{1} } & {{\varvec{\xi}_{2}^{\prime}}} & \cdots & {{\varvec{\xi}_{n}^{\prime}} } \\ \end{array} } \right],} \\ {\varvec{\xi}_{i}^{\prime} = {\varvec{Ad}}_{{\exp {\kern 1pt} \left( {{\hat{\varvec{\xi }}}_{1} ,\;\theta_{1} } \right) \cdots \exp {\kern 1pt} \left( {{\hat{\varvec{\xi }}}_{i - 1} ,\;\theta_{i - 1} } \right)}} {{\varvec{\xi}}}_{i} ,} \\ \end{array} } \right.$$
(1)

where ξi denotes the initial unit screw vector of the ith motion pair, \({\varvec{\xi}_{i}^{\prime}}\) denotes the real-time unit screw vector of the ith motion pair, Ad denotes the concomitant effect of Lie groups on Lie algebras, exp denotes exponential product formula.

The forward kinematics analysis of series kinematic chains can be derived as follows:

$${\varvec{V}}_{O} = {\varvec{J}}_{O} \left( {\varvec{\theta}} \right)\varvec{\dot{\theta } = }\left[ {\begin{array}{*{20}l} {{{\varvec{\omega}}}_{O} } \\ {{\varvec{v}}_{O} } \\ \end{array} } \right],$$
(2)
$${{\varvec{\varepsilon}}}_{O} = {\varvec{J}}_{O} \left( {\varvec{\theta}} \right)\varvec{\ddot{\theta } }{ + }\dot{\varvec{J}}_{O} \left( {\varvec{\theta}} \right)\dot{\varvec{\theta }},$$
(3)

where VO denotes the velocity vector of the point on the end platform that coincides with the origin of the base coordinate system, εO denotes the acceleration vector of this point, ωO denotes the orientation velocity vector of this point, νO denotes the linear velocity vector of this point.

The differential matrix of Jacobian matrix can be calculated as follows:

$$\left\{ {\begin{array}{*{20}l} {\dot{\varvec{J}}_{O} \left( {\varvec{\theta}} \right){ = }\left[ {\begin{array}{*{20}l} {{\dot{\varvec{\xi }}}_{1} } & {{\varvec{\dot{\xi}_{{\varvec{2}}}^{\prime}}} } & \cdots & {{\varvec{\dot{\xi}_{{\varvec{n}}}^{\prime}}} } \\ \end{array} } \right],} \hfill \\ {{\varvec{\dot{\xi}_{i}^{\prime}}} = \left( {\dot{\theta }_{1} \cdot {{\varvec{\xi}}}_{1} + \cdots + \dot{\theta }_{i - 1} \cdot {\varvec{\xi}_{i - 1}^{\prime}} } \right) \times {\varvec{\xi}_{i}^{\prime}} ,} \hfill \\ {\dot{\varvec{J}}_{O} \left( {\varvec{\theta}} \right)\dot{\varvec{\theta }} = \dot{\theta }_{1} \cdot {{\varvec{\xi}}}_{1} \times \left( {{\varvec{\xi}_{2}^{\prime}} \cdot \dot{\theta }_{2} + \cdots + {\varvec{\xi}_{n}^{\prime}} \cdot \dot{\theta }_{n} } \right)} \hfill \\ {\quad + \dot{\theta }_{2} \cdot {\varvec{\xi}_{2}^{\prime}} \times \left( {{\varvec{\xi}_{3}^{\prime}} \cdot \dot{\theta }_{3} + \cdots + {\varvec{\xi}_{n}^{\prime}} \cdot \dot{\theta }_{n} } \right)} \hfill \\ {\quad + \cdots + \dot{\theta }_{n - 1} \cdot {\varvec{\xi}_{n - 1}^{\prime}} \times {\varvec{\xi}_{n}^{\prime}} \cdot \dot{\theta }_{n} .} \hfill \\ \end{array} } \right.$$
(4)

Thus, Eq. (3) can be expressed as follows:

$${{\varvec{\varepsilon}}}_{O} = {\varvec{J}}_{O} \left( {\varvec{\theta}} \right)\varvec{\ddot{\theta } }{ + }\dot{\varvec{\theta }}^{{\text{T}}} {\varvec{H}}_{O} \left( {\varvec{\theta}} \right)\dot{\varvec{\theta }},$$
(5)

where \({\varvec{H}}_{O} \left( {{\varvec{\theta}}} \right) = \left\{ {\begin{array}{*{20}l} {{\varvec{\xi}_{m}^{\prime}} \times {\varvec{\xi}_{n}^{\prime}} ,} & {m < n,} \\ {{\varvec{0}}{,}} & {\text{other cases,}} \\ \end{array} } \right.\) m denotes the number of rows of the matrix, n denotes the number of columns of the matrix.

The forward kinematics analysis of series mechanisms can be derived as follows:

$${\varvec{V}}_{{\text{M}}} = \left[ {\begin{array}{*{20}l} {{{\varvec{\omega}}}_{{\text{M}}} } \\ {{\varvec{v}}_{{\text{M}}} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}l} {{{\varvec{\omega}}}_{O} } \\ {{\varvec{v}}_{O} + {{\varvec{\omega}}}_{O} \times {\varvec{P}}_{{\text{M}}} } \\ \end{array} } \right] = {\varvec{J}}_{{\text{M}}} \left( {\varvec{\theta}} \right)\dot{\varvec{\theta }}{,}$$
(6)
$${{\varvec{\varepsilon}}}_{{\text{M}}} = {\varvec{J}}_{{\text{M}}} \left( {\varvec{\theta}} \right)\varvec{\ddot{\theta } }{ + }\dot{\varvec{\theta }}^{{\text{T}}} {\varvec{H}}_{{\text{M}}} \left( {\varvec{\theta}} \right)\dot{\varvec{\theta }}{ + }{\varvec{c}}_{{\text{M}}} ,$$
(7)

where PM denotes the position vector of the end-reference point, VM denotes the velocity vector of this point, εM denotes the acceleration vector of this point, ωM denotes the orientation velocity vector of this point, νM denotes the linear velocity vector of this point, cM =\(\left[ {\begin{array}{*{20}l} {{\varvec{0}}_{{{3} \times {1}}} } \\ {{{\varvec{\omega}}}_{{\text{M}}} \times {\varvec{v}}_{{\text{M}}} } \\ \end{array} } \right]\).

Evidently, in non-singular configurations, the inverse kinematics analysis of series mechanisms can be calculated as follows:

$$\dot{\varvec{\theta }} = {\varvec{J}}\left( {\varvec{\theta}} \right)_{{\text{M}}}^{ - 1} {\varvec{V}}_{{\text{M}}} ,$$
(8)
$$\varvec{\ddot{\theta }} = {\varvec{J}}\left( {\varvec{\theta}} \right)_{{\text{M}}}^{ - 1} \left( {{{\varvec{\varepsilon}}}_{{\text{M}}} - \dot{\varvec{\theta }}^{{\text{T}}} {\varvec{H}}_{{\text{M}}} \left( {\varvec{\theta}} \right)\dot{\varvec{\theta }} - {\varvec{c}}_{{\text{M}}} } \right).$$
(9)

2.2 Kinematics Analysis of Parallel Mechanisms

Due to the coupling effect of kinematic chains on the moving platform, the kinematics transfer matrices (J and H) cannot be directly obtained.

2.2.1 Velocity Analysis of Parallel Mechanisms

The forward velocity analysis of parallel mechanisms can be obtained as follows:

$${\varvec{V}}_{{\text{M}}} = {\varvec{J}}_{\phi }^{{\text{M}}} \dot{\varvec{\phi }} = \left[ {{\varvec{J}}_{\theta }^{{\text{M}}} {\dot{\varvec{\theta }}}} \right]^{\left( b \right)} ,$$
(10)

where \({\varvec{J}}_{\phi }^{{\text{M}}}\) denotes the Jacobian matrix of the end-platform based on active pairs, \(\dot{\varvec{\phi }}\) denotes the velocity vector of active pairs, \(\left[ {{\varvec{J}}_{\theta }^{{\text{M}}} } \right]^{\left( b \right)}\) denotes the Jacobian matrix of the bth kinematic chain, and \({\dot{\varvec{\theta }}}^{\left( b \right)}\) denotes the velocity vector of motion pairs of the bth kinematic chain.

Meanwhile, in the non-singular configurations, the inverse velocity analysis of parallel mechanisms can be derived as follows:

$$\left\{ {\begin{array}{*{20}l} {\dot{\varvec{\phi }} = {\varvec{J}}_{{\text{M}}}^{\phi } {\varvec{V}}_{{\text{M}}} ,} \\ {{\dot{\varvec{\theta }}}^{\left( b \right)} = \left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]^{\left( b \right)} {\varvec{V}}_{{\text{M}}} = \left[ {{\varvec{J}}_{\theta }^{{\text{M}}} } \right]^{ - 1\left( b \right)} {\varvec{V}}_{{\text{M}}} .} \\ \end{array} } \right.$$
(11)

Assuming that the first motion pair of each kinematic chain acts as the active pair, \(\dot{\varvec{\phi }}\) can be expressed as follows:

$$\dot{\varvec{\phi }} = \left[ {\begin{array}{*{20}l} {\dot{\theta }_{1}^{(1)} } & {\dot{\theta }_{1}^{(2)} } & \cdots & {\dot{\theta }_{1}^{(b)} } \\ \end{array} } \right]^{{\text{T}}} .$$
(12)

According to Eq. (11), \({\varvec{J}}_{\phi }^{{\text{M}}}\) and \({\varvec{J}}_{{\text{M}}}^{\phi }\) can be calculated as follows:

$${\varvec{J}}_{\phi }^{{\text{M}}} = \left[ {{\varvec{J}}_{{\text{M}}}^{\phi } } \right]^{ - 1} ,$$
(13)
$${\varvec{J}}_{{\text{M}}}^{\phi } = \left[ {\begin{array}{*{20}l} {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{\left( 1 \right)} } & {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{{\left( {2} \right)}} } & \cdots & {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{\left( b \right)} } \\ \end{array} } \right]^{{\text{T}}} ,$$
(14)

where (1:) denotes the first row of matrices.

2.2.2 Acceleration Analysis of Parallel Mechanisms

Evidently, the forward acceleration analysis of parallel mechanisms can be obtained as follows:

$$\begin{aligned} {{\varvec{\varepsilon}}}_{{\text{M}}} & = {\varvec{J}}_{\phi }^{{\text{M}}} \varvec{\ddot{\phi } }{ + }\dot{\varvec{\phi }}^{{\text{T}}} {\varvec{H}}_{\phi }^{{\text{M}}} \dot{\varvec{\phi }}{ + }{\varvec{c}}_{{\text{M}}} \, \\ & = \left[ {{\varvec{J}}_{\theta }^{{\text{M}}} {\varvec{\ddot{\theta }}}{ + }{\dot{\varvec{\theta }}}^{{\text{T}}} {\varvec{H}}_{\theta }^{{\text{M}}} {\dot{\varvec{\theta }}}} \right]^{\left( b \right)} { + }{\varvec{c}}_{{\text{M}}} {. } \\ \end{aligned}$$
(15)

Meanwhile, the inverse acceleration analysis of parallel mechanisms can be derived as follows:

$$\left\{ {\begin{array}{*{20}l} {\varvec{\ddot{\phi }} = {\varvec{J}}_{{\text{M}}}^{\phi } \left( {{{\varvec{\varepsilon}}}_{{\text{M}}} - \dot{\varvec{\phi }}^{{\text{T}}} {\varvec{H}}_{\phi }^{{\text{M}}} \dot{\varvec{\phi }} - {\varvec{c}}_{{\text{M}}} } \right)} \\ { = {\varvec{J}}_{{\text{M}}}^{\phi } {{\varvec{\varepsilon}}}_{\phi }^{{\text{M}}} - \dot{\varvec{\phi }}^{{\text{T}}} {\varvec{H}}_{{\text{M}}}^{\phi } \dot{\varvec{\phi }} - {\varvec{J}}_{{\text{M}}}^{\phi } \left( {{\varvec{c}}_{{\text{M}}} } \right),} \\ {{\varvec{\ddot{\theta }}}^{\left( b \right)} = \left[ {{\varvec{J}}_{{\text{M}}}^{\theta } \left( {{{\varvec{\varepsilon}}}_{{\text{M}}} - {\dot{\varvec{\theta }}}^{{\text{T}}} {\varvec{H}}_{\theta }^{{\text{M}}} {\dot{\varvec{\theta }}} - {\varvec{c}}_{{\text{M}}} } \right)} \right]^{\left( b \right)} .} \\ \end{array} } \right.$$
(16)

According to Eqs. (12), (14), and (16), \(\varvec{\ddot{\phi }}\) can be calculated as follows:

$$\varvec{\ddot{\phi }} = \left[ {\begin{array}{*{20}l} {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{\left( 1 \right)} } \\ {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{\left( 2 \right)} } \\ \vdots \\ {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{\left( b \right)} } \\ \end{array} } \right]{{\varvec{\varepsilon}}}_{{\text{M}}} - \left[ {\begin{array}{*{20}l} {\dot{\varvec{\phi }}^{{\text{T}}} \left[ {{\varvec{L}}_{1} } \right]^{\left( 1 \right)} \dot{\varvec{\phi }}} \\ {\dot{\varvec{\phi }}^{{\text{T}}} \left[ {{\varvec{L}}_{1} } \right]^{\left( 2 \right)} \dot{\varvec{\phi }}} \\ \vdots \\ {\dot{\varvec{\phi }}^{{\text{T}}} \left[ {{\varvec{L}}_{1} } \right]^{\left( b \right)} \dot{\varvec{\phi }}} \\ \end{array} } \right] - \left[ {\begin{array}{*{20}l} {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{\left( 1 \right)} } \\ {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{\left( 2 \right)} } \\ \vdots \\ {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{\left( b \right)} } \\ \end{array} } \right]{\varvec{c}}_{{\text{M}}} ,$$
(17)

where \(\left[ {{\varvec{L}}_{1} } \right]^{\left( b \right)} = \left[ {\left[ {{\varvec{J}}_{\phi }^{\theta } } \right]^{{\text{T}}} \left[ {\left[ {\left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]_{{1{\varvec{ :}}}}^{{\text{T}}} } \right] * {\varvec{H}}_{\theta }^{{\text{M}}} } \right]{\varvec{J}}_{\phi }^{\theta } } \right]^{\left( b \right)} ,\) \(\left[ {{\varvec{J}}_{\phi }^{\theta } } \right]^{\left( b \right)} = \left[ {{\varvec{J}}_{{\text{M}}}^{\theta } } \right]^{\left( b \right)} {\varvec{J}}_{\phi }^{{\text{M}}} ,\) where * indicates the generalized scalar product of matrices, and the matrix before * is equivalent to a constant.

Thus \({\varvec{H}}_{\phi }^{{\text{M}}}\) and \({\varvec{H}}_{{\text{M}}}^{\phi }\) can be expressed as follows:

$${\varvec{H}}_{\phi }^{{\text{M}}} = {\varvec{J}}_{\phi }^{{\text{M}}} * {\varvec{H}}_{{\text{M}}}^{\phi } ,$$
(18)
$${\varvec{H}}_{{\text{M}}}^{\phi } = \left[ {\begin{array}{*{20}l} {\left[ {\varvec{L}} \right]_{1}^{\left( 1 \right)} } & {\left[ {\varvec{L}} \right]_{1}^{\left( 2 \right)} } & \cdots & {\left[ {\varvec{L}} \right]_{1}^{\left( b \right)} } \\ \end{array} } \right]^{{\text{T}}} .$$
(19)

2.3 Kinematics Analysis of Hybrid Mechanisms

The realization of the conversion of parallel joints and equivalent series joints is the key to the kinematics analysis of hybrid mechanisms. In our previous study [29], the inverse displacement problem of hybrid mechanisms was solved based on the equivalent series mechanism. In general, the equivalent series manipulator can be obtained based on the DOF of hybrid mechanisms. Therefore, it is clear that the equivalent series joint exhibits the same kinematics characteristics as the parallel joint follows:

$${\varvec{V}}_{{\text{M}}} = {\varvec{J}}_{\psi }^{{\text{M}}} {\dot{\varvec{\psi }}} = {\varvec{J}}_{\phi }^{{\text{M}}} \dot{\varvec{\phi }} = \left[ {{\varvec{J}}_{\theta }^{{\text{M}}} {\dot{\varvec{\theta }}}} \right]^{\left( b \right)} ,$$
(20)
$$\begin{aligned} {\varvec{\varepsilon}}_{{\text{M}}} & = {\varvec{J}}_{\psi }^{{\text{M}}} {\varvec{\ddot{\psi }}}{ + }{\dot{\varvec{\psi }}}^{{\text{T}}} {\varvec{H}}_{\psi }^{{\text{M}}} {\dot{\varvec{\psi }}}{ + }{\varvec{c}}_{{\text{M}}} \\ & = \, {\varvec{J}}_{\phi }^{{\text{M}}} \varvec{\ddot{\phi }}{ + }\dot{\varvec{\phi }}^{{\text{T}}} {\varvec{H}}_{\phi }^{{\text{M}}} \dot{\varvec{\phi }}{ + }{\varvec{c}}_{{\text{M}}} \\ & = \left[ {{\varvec{J}}_{\theta }^{{\text{M}}} {\varvec{\ddot{\theta }}}{ + }{\dot{\varvec{\theta }}}^{{\text{T}}} {\varvec{H}}_{\theta }^{{\text{M}}} {\dot{\varvec{\theta }}}} \right]^{\left( b \right)} { + }{\varvec{c}}_{{\text{M}}} , \\ \end{aligned}$$
(21)

where \({\dot{\varvec{\psi }}} = \left[ {\begin{array}{*{20}l} {\dot{\theta }_{{{\text{E}}1}} } & {\dot{\theta }_{{{\text{E2}}}} } & \cdots & {\dot{\theta }_{{{\text{E}}i}} } \\ \end{array} } \right]^{{\text{T}}}\) indicates the motion pairs of the equivalent series manipulator.

The velocity and acceleration vectors of motion pairs of the equivalent series joints can be obtained as follows:

$${\dot{\varvec{\psi }}} = {\varvec{J}}_{{\text{M}}}^{\psi } {\varvec{J}}_{\phi }^{{\text{M}}} \dot{\varvec{\phi }}{,}$$
(22)
$${\varvec{\ddot{\psi }}} = {\varvec{J}}_{{\text{M}}}^{\psi } \left( {{\varvec{J}}_{\phi }^{{\text{M}}} \varvec{\ddot{\phi }}{ + }\dot{\varvec{\phi }}^{{\text{T}}} {\varvec{H}}_{\phi }^{{\text{M}}} \dot{\varvec{\phi }} - {\dot{\varvec{\psi }}}^{{\text{T}}} {\varvec{H}}_{\psi }^{{\text{M}}} {\dot{\varvec{\psi }}}} \right){.}$$
(23)

2.3.1 Forward Kinematics Analysis of Hybrid Mechanisms

According to the kinematics analysis of serial and parallel mechanisms, the generalized method for forward kinematics analysis of hybrid mechanisms is proposed. The flow diagram for this method is shown in Figure 3. Firstly, the velocity and acceleration vectors of motion pairs of the equivalent series joints can be calculated based on Eqs. (22) and (23). Then, by applying Eqs. (6) and (7), the kinematics characteristics of the end-platform can be obtained. In this paper, we consider the HRA, as an example, to demonstrate the method in Section 3.

Figure 3
figure 3

Forward kinematics analysis of hybrid mechanisms

2.3.2 Inverse Kinematics Analysis of Hybrid Mechanisms

There are two similar methods for the inverse kinematics analysis of hybrid mechanisms. The flow diagram of the first method is shown in Figure 4. Firstly, the velocity and acceleration vectors of motion pairs of the equivalent series manipulator can be calculated based on Eqs. (8) and (9). Then, by applying Eqs. (20) and (21), the velocity and acceleration vectors of moving platform of the parallel joints can be obtained. Finally, the kinematics characteristics of all the motion pairs of the hybrid manipulator can be derived by applying Eqs. (11) and (16).

Figure 4
figure 4

First method for the inverse kinematics analysis of hybrid mechanisms

When a certain kinematic chain of a parallel joint has the same DOF as the parallel joint, then this chain can replace the equivalent series joint. The flow diagram of this method is shown in Figure 5, and its solution procedure is similar to that of the first method. In this paper, we consider the HRA, as an example, to demonstrate the two methods in Section 3.

Figure 5
figure 5

Second method for the inverse kinematics analysis of hybrid mechanisms

3 Kinematics Analysis of the Humanoid Robotic Arm

3.1 Structural Configuration

The humanoid shoulder joint (HSJ) is based on a spherical 5R parallel mechanism, as shown in Figure 6(a). The initial unit axis vectors of all the revolute pairs in the HSJ are shown in Figure 6(b). Let O-XYZ be a base reference frame attached at the center O, where Y and OA2 axes are coincident. Let O-X1Y1Z1 be a moving reference frame of the HSJ attached at center O, where X1 and OC2 axes are coincident and Z1 and OC1 axes are coincident.

Figure 6
figure 6

Structural configuration of the HSJ

The humanoid elbow joint (HEJ) is based on a series 3-DOF kinematic chain RRR, as shown in Figure 7(a). The initial unit axis vectors of all the revolute pairs in the HEJ are shown in Figure 7(b). Let O2-X2Y2Z2 be a moving reference frame of the HEJ attached at the center O2, where Z2 and O2D axes are coincident.

Figure 7
figure 7

Structural configuration of the HEJ

The humanoid wrist joint (HWJ) is based on a spherical 3-RRP parallel mechanism, as shown in Figure 8(a). The initial unit axis vectors of all the motion pairs in the HWJ are shown in Figure 8(b). Let O3-X3Y3Z3 be a base reference frame of the HWJ attached at center O3, where Z3 and O2F axes are coincident. The moving reference frame attached at center O4, which coincides with point O3, is O4-X4Y4Z4.

Figure 8
figure 8

Structural configuration of the HWJ

The HRA can be equivalent to a series robotic arm, as shown in Figure 9. Specifically, β1 and γ1 denote the input of the equivalent series shoulder joint, and α4, β4, and γ4 denote the input of the equivalent series wrist joint.

Figure 9
figure 9

Mechanism diagram of the equivalent series robotic arm

3.2 Pre-processing of Parallel Joints

To clarify the kinematics analysis of the hybrid HRA, the Jacobian matrices of the parallel joints and corresponding equivalent series joints are calculated first.

3.2.1 Pre-processing of Humanoid Shoulder Joint

The HSJ exhibits only 2 degrees of rotational freedom. Hence, the Jacobian matrix of kinematics chain 1 can be obtained according to Eqs. (6) and (8) as follows:

$$\left\{ {\begin{array}{*{20}l} {\left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} } \right]^{1} = \left[ {\begin{array}{*{20}l} {{\varvec{S}}_{{{ A}_{1} }} } & {{\varvec{S}_{{B_{1} }}^{\prime}} } & {{\varvec{S}_{{C_{1} }}^{\prime}} } \\ \end{array} } \right],} \\ {\left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]^{1} { = }\left[ {\left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} } \right]^{1} } \right]^{ - 1} ,} \\ \end{array} } \right.$$
(24)

where \({\varvec{S}_{i}^{\prime}}\) denotes the real-time unit axis vector of the ith motion pair.

However, for the kinematic chain 2, a virtual revolute pair D2 is added to make the Jacobian matrix a square matrix of the following form:

$$\left\{ {\begin{array}{*{20}l} {{{\varvec{\xi}}}_{{D_{{2}} }} = \left[ {\begin{array}{*{20}l} {{\varvec{S}}_{{D_{{2}} }} } & {{\varvec{S}}_{{D_{{2}} }}^{0} } \\ \end{array} } \right]^{{\text{T}}} ,} \\ {\theta_{{D_{{2}} }} = \dot{\theta }_{{D_{{2}} }} = \ddot{\theta }_{{D_{{2}} }} = 0,} \\ \end{array} } \right.$$
(25)

where \({\varvec{S}}_{{D_{{2}} }} = \left[ {\begin{array}{*{20}l} 0 & 0 & 1 \\ \end{array} } \right]^{{\text{T}}}\) and \({\varvec{S}}_{{D_{{2}} }}^{0} = \left[ {\begin{array}{*{20}l} 0 & 0 & 0 \\ \end{array} } \right]^{{\text{T}}}\).

Similarly, the Jacobian matrix of the kinematic chain 2 can be obtained according to Eqs. (6) and (8):

$$\left\{ {\begin{array}{*{20}l} {\left\{ {\begin{array}{*{20}l} {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} } \right]^{2} = \left[ {\begin{array}{*{20}l} {{\varvec{S}}_{{{ A}_{2} }} } & {{\varvec{S}_{{C_{2} }}^{\prime}} } & {{\varvec{S}_{{D_{2} }}^{\prime}} } \\ \end{array} } \right],} \\ {\left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} } \right]^{2} = \left[ {\begin{array}{*{20}l} {{\varvec{S}}_{{{ A}_{2} }} } & {{\varvec{S}_{{C_{2} }}^{\prime}} } \\ \end{array} } \right],} \\ \end{array} } \right.} \\ {\left\{ {\begin{array}{*{20}l} {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]^{2} = \left[ {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} } \right]^{2} } \right]^{ - 1} ,} \\ {\left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]^{2} = \left[ {\begin{array}{*{20}l} {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]_{{1{\varvec{ :}}}}^{{2}} } & {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]_{{{2}{\varvec{ :}}}}^{2} } \\ \end{array} } \right]^{{\text{T}}} ,} \\ \end{array} } \right.} \\ \end{array} } \right.$$
(26)

where (:1) denotes the first column of matrices.

According to Eqs. (13) and (14), the Jacobian matrix of the HSJ based on the active pairs can be obtained as follows:

$$\left\{ {\begin{array}{*{20}l} {\left\{ {\begin{array}{*{20}l} {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} = \left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\phi_{{{\text{SJ}}}} }} } \right]^{ - 1} ,} \\ {\left[ {{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} = \left[ {\begin{array}{*{20}l} {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} } \right]_{:1} } & {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} } \right]_{:2} } \\ \end{array} } \right],} \\ \end{array} } \right.} \\ {\left\{ {\begin{array}{*{20}l} {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\phi_{{{\text{SJ}}}} }} = \left[ {\begin{array}{*{20}l} {\left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]_{1:}^{1} } & {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]_{1:}^{2} } & {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]_{3:}^{2} } \\ \end{array} } \right]^{{\text{T}}} ,} \\ {\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\phi_{{{\text{SJ}}}} }} = \left[ {\begin{array}{*{20}l} {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\phi_{{{\text{SJ}}}} }} } \right]_{1:} } & {\left[ {\left[ {\overline{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\phi_{{{\text{SJ}}}} }} } \right]_{2:} } \\ \end{array} } \right]^{{\text{T}}} .} \\ \end{array} } \right.} \\ \end{array} } \right.$$
(27)

For the corresponding equivalent series joint, the Jacobian matrix can be obtained according to Eqs. (6) and (8) as follows:

$$\left\{ {\begin{array}{*{20}l} {\left[ {{\varvec{J}}_{\omega } } \right]_{{\psi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} = \left[ {\begin{array}{*{20}l} {{\varvec{S}}_{{Y_{1} }} } & {{\varvec{S}_{{X_{1} }}^{\prime}} } \\ \end{array} } \right],} \\ {\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\psi_{{{\text{SJ}}}} }} { = }\left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{\psi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} } \right]^{{\text{T}}} .} \\ \end{array} } \right.$$
(28)

3.2.2 Pre-processing of the Humanoid Wrist Joint

The HWJ has 3 degrees of rotational freedom. Hence, the Jacobian matrix of the kinematic chains can be obtained according to Eqs. (6) and (8) as follows:

$$\left\{ {\begin{array}{*{20}l} {\left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} } \right]^{b} = \left[ {\begin{array}{*{20}l} {{}^{3}{\varvec{S}}_{{{ H}_{b} }} } & {{}^{3}{\varvec{S}_{{K_{b} }}^{\prime}} } & {{}^{3}{\varvec{S}_{{P_{b} }}^{\prime}} } \\ \end{array} } \right],} \\ {\left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\theta_{{{\text{WJ}}}} }} } \right]^{b} { = }\left[ {\left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} } \right]^{b} } \right]^{ - 1} ,} \\ \end{array} } \right.$$
(29)

where label 3 in the upper left corner indicates that the calculation is performed in the O3-X3Y3Z3 coordinate system.

According to Eqs. (13) and (14), the Jacobian matrix of the HWJ is based on the active pairs and can be obtained as follows:

$$\left\{ {\begin{array}{*{20}l} {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} = \left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\phi_{{{\text{WJ}}}} }} } \right]^{ - 1} ,} \\ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\phi_{{{\text{WJ}}}} }} { = }\left[ {\begin{array}{*{20}l} {\left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\theta_{{{\text{WJ}}}} }} } \right]_{{1{\varvec{ :}}}}^{1} } & {\left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\theta_{{{\text{WJ}}}} }} } \right]_{{1{\varvec{ :}}}}^{2} } & {\left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\theta_{{{\text{WJ}}}} }} } \right]_{{1{\varvec{ :}}}}^{3} } \\ \end{array} } \right]^{{\text{T}}} .} \\ \end{array} } \right.$$
(30)

With respect to the corresponding equivalent series joint, the Jacobian matrix can be obtained according to Eqs. (6) and (8) as follows:

$$\left\{ {\begin{array}{*{20}l} {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\psi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} = \left[ {\begin{array}{*{20}l} {{}^{3}{\varvec{S}}_{{{ Z}_{4} }} } & {{}^{3}{\varvec{S}_{{Y_{4} }}^{\prime}} } & {{}^{3}{\varvec{S}_{{X_{4} }}^{\prime}} } \\ \end{array} } \right],} \\ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\psi_{{{\text{WJ}}}} }} { = }\left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\psi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} } \right]^{ - 1} .} \\ \end{array} } \right.$$
(31)

3.3 Forward Kinematics Analysis of the Humanoid Robotic Arm

According to Eq. (22), the velocity vector of motion pairs of the corresponding equivalent series joint can be calculated as follows:

$$\left\{ {\begin{array}{*{20}l} {{\dot{\varvec{\psi }}}_{{{\text{SJ}}}} = \left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\psi_{{{\text{SJ}}}} }} \left[ {{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} \dot{\varvec{\phi }}_{{\text{ SJ}}} ,} \\ {{\dot{\varvec{\psi }}}_{{{\text{WJ}}}} = {}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\psi_{{{\text{WJ}}}} }} {}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} \dot{\varvec{\phi }}_{{\text{ WJ}}} .} \\ \end{array} } \right.$$
(32)

Meanwhile, according to Eq. (11), the velocity vectors of passive motion pairs of the corresponding parallel joint can be calculated as follows:

$$\left\{ {\begin{array}{*{20}l} {{\dot{\varvec{\theta }}}_{{{\text{SJ}}}}^{\left( b \right)} = \left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]^{\left( b \right)} \left[ {{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} \dot{\varvec{\phi }}_{{\text{ SJ}}} ,} \\ {{\dot{\varvec{\theta }}}_{{{\text{WJ}}}}^{\left( b \right)} = \left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\theta_{{{\text{WJ}}}} }} } \right]^{\left( b \right)} {}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} \dot{\varvec{\phi }}_{{\text{ WJ}}} .} \\ \end{array} } \right.$$
(33)

Thus, according to Eqs. (18) and (19), \(\left[ {{\varvec{H}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}}\) and \({}^{3}\left[ {{\varvec{H}}_{\omega } } \right]_{{\psi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}}\) can be calculated. Then, according to Eq. (23), the acceleration vector of the corresponding equivalent series joint can be calculated as follows:

$$\left\{ {\begin{array}{*{20}l} {{\varvec{\ddot{\psi }}}_{{{\text{SJ}}}} = \left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\psi_{{{\text{SJ}}}} }} \left( {\left[ {{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} \varvec{\ddot{\phi } }{ + }\dot{\varvec{\phi }}_{{\text{ SJ}}}^{{\text{ T}}} \left[ {{\varvec{H}}_{\omega } } \right]_{{\phi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} \dot{\varvec{\phi }}_{{\text{ SJ}}} } \right.} \\ { \, \left. { - {\dot{\varvec{\psi }}}_{{{\text{SJ}}}}^{{\text{ T}}} \left[ {{\varvec{H}}_{\omega } } \right]_{{\psi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} {\dot{\varvec{\psi }}}_{{{\text{SJ}}}} } \right),} \\ {{\varvec{\ddot{\psi }}}_{{{\text{WJ}}}} = {}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\psi_{{{\text{WJ}}}} }} \left( {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\phi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} \varvec{\ddot{\phi } }{ + }\dot{\varvec{\phi }}_{{\text{ WJ}}}^{{\text{ T}}} {}^{3}\left[ {{\varvec{H}}_{\omega } } \right]_{{\phi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} \dot{\varvec{\phi }}_{{\text{ WJ}}} } \right.} \\ { \, \left. { - {\dot{\varvec{\psi }}}_{{{\text{WJ}}}}^{{\text{ T}}} {}^{3}\left[ {{\varvec{H}}_{\omega } } \right]_{{\psi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} {\dot{\varvec{\psi }}}_{{{\text{WJ}}}} } \right).} \\ \end{array} } \right.$$
(34)

Finally, according to Eqs. (6) and (7), the forward kinematics analysis of the HRA can be obtained as follows:

$$\left\{ {\begin{array}{*{20}l} {{\varvec{V}}_{{{\text{HRA}}}} = {\varvec{J}}_{\psi }^{{{\text{HRA}}}} {\dot{\varvec{\psi }}}_{{{\text{HRA}}}} ,} \\ {{{\varvec{\varepsilon}}}_{{{\text{HRA}}}} = {\varvec{J}}_{\psi }^{{{\text{HRA}}}} {\varvec{\ddot{\psi }}}_{{{\text{HRA}}}} { + }{\dot{\varvec{\psi }}}_{{{\text{HRA}}}}^{{\text{T}}} {\varvec{H}}_{\psi }^{{{\text{HRA}}}} {\dot{\varvec{\psi }}}_{{{\text{HRA}}}} { + }{\varvec{c}}_{{{\text{HRA}}}} ,} \\ \end{array} } \right.$$
(35)

where \({\varvec{J}}_{\psi }^{{{\text{HRA}}}} = \left[ {\begin{array}{*{20}l} {{{\varvec{\xi}}}_{{Y_{1} }} }{{\varvec{\xi}_{{X_{1} }}^{\prime}} }{{\varvec{\xi}_{D}^{\prime}} }{{\varvec{\xi}_{E}^{\prime}} }{{\varvec{\xi}_{F}^{\prime}} }{{\varvec{\xi}_{{Z_{4} }}^{\prime}} }{{\varvec{\xi}_{{Y_{4} }}^{\prime}} }{{\varvec{\xi}_{{X_{4} }}^{\prime}} } \\ \end{array} } \right]\), \({{\varvec{\psi}}}_{{{\text{HRA}}}} = \left[ {\begin{array}{*{20}l} {\psi_{{Y_{1} }} }{\psi_{{X_{1} }} }{\theta_{D} }{\theta_{E} }{\theta_{F} }{\psi_{{Z_{4} }} }{\psi_{{Y_{4} }} }{\psi_{{X_{4} }} } \\ \end{array} } \right]^{{\text{T}}}\), \({\varvec{H}}_{\psi }^{{{\text{HRA}}}} = \left\{ {\begin{array}{*{20}l} {{\varvec{\xi}_{m}^{\prime}} \times {\varvec{\xi}_{n}^{\prime}} ,} & {m < n,} \\ {0,} & {\text{other cases,}} \\ \end{array} } \right.\) \(m,n = Y_{1} ,X_{1} ,D,E,F,Z_{4} ,Y_{4} ,X_{4}\).

3.4 Inverse Kinematics Analysis of the Humanoid Robotic Arm

3.4.1 The First Method

According to Eqs. (8) and (9), the velocity and acceleration vectors of the equivalent series manipulator can be calculated as follows:

$$\left\{ {\begin{array}{*{20}l} {{\dot{\varvec{\psi }}}_{{{\text{HRA}}}} = \left[ {{\varvec{J}}_{\psi }^{{{\text{HRA}}}} } \right]^{ - 1} {\varvec{V}}_{{{\text{HRA}}}} ,} \\ {{\varvec{\ddot{\psi }}}_{{{\text{HRA}}}} = \left[ {{\varvec{J}}_{\psi }^{{{\text{HRA}}}} } \right]^{ - 1} \left[ {{{\varvec{\varepsilon}}}_{{{\text{HRA}}}} - {\dot{\varvec{\psi }}}_{{{\text{HRA}}}}^{{\text{T}}} {\varvec{H}}_{\psi }^{{{\text{HRA}}}} {\dot{\varvec{\psi }}}_{{{\text{HRA}}}} - {\varvec{c}}_{{\text{M}}} } \right].} \\ \end{array} } \right.$$
(36)

According to Eqs. (20) and (21), the velocity and acceleration vectors of moving platforms of the parallel joints can be calculated as follows:

$$\left\{ {\begin{array}{*{20}l} {{\varvec{V}}_{{{\text{SJ}}}} = \left[ {{\varvec{J}}_{\omega } } \right]_{{\psi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} {\dot{\varvec{\psi }}}_{{{\text{SJ}}}} ,} \\ {{{\varvec{\varepsilon}}}_{{{\text{SJ}}}} = \left[ {{\varvec{J}}_{\omega } } \right]_{{\psi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} {\varvec{\ddot{\psi }}}_{{{\text{SJ}}}} { + }{\dot{\varvec{\psi }}}_{{{\text{SJ}}}}^{{\text{ T}}} \left[ {{\varvec{H}}_{\omega } } \right]_{{\psi_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} {\dot{\varvec{\psi }}}_{{{\text{SJ}}}} { + }{\varvec{c}}_{{{\text{SJ}}}} ,} \\ \end{array} } \right.$$
(37)
$$\left\{ {\begin{array}{*{20}l} {{}^{3}{\varvec{V}}_{{{\text{WJ}}}} = {}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\psi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} {\dot{\varvec{\psi }}}_{{{\text{WJ}}}} ,} \\ {{}^{3}{{\varvec{\varepsilon}}}_{{{\text{WJ}}}} = {}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\psi_{{{\text{WJ}}}} }} {\varvec{\ddot{\psi }}}_{{{\text{WJ}}}} { + }{\dot{\varvec{\psi }}}_{{{\text{WJ}}}}^{{\text{ T}}} {}^{3}\left[ {{\varvec{H}}_{\omega } } \right]_{{\psi_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} {\dot{\varvec{\psi }}}_{{{\text{WJ}}}} { + }{}^{3}{\varvec{c}}_{{{\text{WJ}}}} .} \\ \end{array} } \right.$$
(38)

According to Eqs. (11) and (16), the velocity and acceleration vectors of all the motion pairs of the parallel joints can be obtained as follows:

$$\left\{ {\begin{array}{*{20}l} {{\dot{\varvec{\theta }}}_{{{\text{SJ}}}}^{\left( b \right)} = \left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} } \right]^{\left( b \right)} {\varvec{V}}_{{{\text{SJ}}}} ,} \\ {{\dot{\varvec{\theta }}}_{{{\text{WJ}}}}^{\left( b \right)} = \left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\theta_{{{\text{WJ}}}} }} } \right]^{\left( b \right)} {}^{3}{\varvec{V}}_{{{\text{WJ}}}} ,} \\ \end{array} } \right.$$
(39)
$$\left\{ {\begin{array}{*{20}l} {{\varvec{\ddot{\theta }}}_{{{\text{SJ}}}}^{\left( b \right)} = \left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{SJ}}}}^{{\theta_{{{\text{SJ}}}} }} \left( {{{\varvec{\varepsilon}}}_{{{\text{SJ}}}} - {\dot{\varvec{\theta }}}_{{{\text{SJ}}}}^{{\text{ T}}} \left[ {{\varvec{H}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} {\dot{\varvec{\theta }}}_{{{\text{SJ}}}} - {\varvec{c}}_{{{\text{SJ}}}} } \right)} \right]^{\left( b \right)} ,} \\ {{\varvec{\ddot{\theta }}}_{{{\text{WJ}}}}^{\left( b \right)} = \left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{{\text{WJ}}}}^{{\theta_{{{\text{WJ}}}} }} \left( {{}^{3}{{\varvec{\varepsilon}}}_{{{\text{WJ}}}} - {\dot{\varvec{\theta }}}_{{{\text{WJ}}}}^{{\text{ T}}} {}^{3}\left[ {{\varvec{H}}_{\omega } } \right]_{{\theta_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} {\dot{\varvec{\theta }}}_{{{\text{WJ}}}} - {}^{3}{\varvec{c}}_{{{\text{WJ}}}} } \right)} \right]^{\left( b \right)} .} \\ \end{array} } \right.$$
(40)

3.4.2 The Second Method

According to the mobility analysis of the hybrid HRA, kinematic chain 2 of the HSJ and kinematic chain 1 (or 2, or 3) of the HWJ are selected to form the corresponding branch series of the robotic arm.

According to Eqs. (8) and (9), the velocity and acceleration vectors of the branch series manipulator can be calculated as follows:

$$\left\{ {\begin{array}{*{20}l} {{\dot{\varvec{\psi }}}_{{{\text{B}} - {\text{HRA}}}} = \left[ {{\varvec{J}}_{\psi }^{{{\text{B}} - {\text{HRA}}}} } \right]^{ - 1} {\varvec{V}}_{{{\text{HRA}}}} ,} \\ {{\varvec{\ddot{\psi }}}_{{{\text{B}} - {\text{HRA}}}} = \left[ {{\varvec{J}}_{\psi }^{{{\text{B}} - {\text{HRA}}}} } \right]^{ - 1} \left[ {{{\varvec{\varepsilon}}}_{{{\text{HRA}}}} - {\dot{\varvec{\psi }}}_{{{\text{B}} - {\text{HRA}}}}^{{\text{T}}} {\varvec{H}}_{\psi }^{{{\text{B}} - {\text{HRA}}}} {\dot{\varvec{\psi }}}_{{{\text{B}} - {\text{HRA}}}} - {\varvec{c}}_{{{\text{HRA}}}} } \right],} \\ \end{array} } \right.$$
(41)

where \({\varvec{J}}_{\psi }^{{{\text{B}} - {\text{HRA}}}} = \left[ {\begin{array}{*{20}l} {{{\varvec{\xi}}}_{{A_{2} }} }{{\varvec{\xi}^{{\prime}}_{{C_{2} }}} }{{\varvec{\xi}^{{\prime}}_{D}} }{{\varvec{\xi}^{{\prime}}_{E}} }{{\varvec{\xi}^{{\prime}}_{F}} }{{\varvec{\xi}^{{\prime}}_{{H_{1}} }} }{{\varvec{\xi}^{{\prime}}_{{K_{1} }}} }{{\varvec{\xi}^{{\prime}}_{{P_{1}} }} } \\ \end{array} } \right]\), \({{\varvec{\psi}}}_{{{\text{B}} - {\text{HRAHRA}}}} = \left[ {\begin{array}{*{20}l} {\theta_{{A_{2} }} }{\theta_{{C_{2} }} }{\theta_{D} }{\theta_{E} }{\theta_{F} }{\theta_{{H_{1} }} }{\theta_{{K_{1} }} }{\theta_{{P_{1} }} } \\ \end{array} } \right]^{{\text{T}}}\), \({\varvec{H}}_{\psi }^{{{\text{B}} - {\text{HRA}}}} = \left\{ {\begin{array}{*{20}l} {{\varvec{\xi}^{{\prime}}_{m}} \times {\varvec{\xi}^{{\prime}}_{n}} ,} & {m < n,} \\ {0,} & {\text{other cases,}} \\ \end{array} } \right.\) \(m,n = A_{2} ,C_{2} ,D,E,F,H_{1} ,K_{1} ,P_{1} .\)

According to Eqs. (20) and (21), the velocity and acceleration vectors of moving platforms of the parallel joints can be calculated as follows:

$$\left\{ {\begin{array}{*{20}l} {{\varvec{V}}_{{{\text{SJ}}}} = \left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} {\dot{\varvec{\theta }}}} \right]^{2} ,} \\ {{{\varvec{\varepsilon}}}_{{{\text{SJ}}}} = \left[ {\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} {\varvec{\ddot{\theta }}}{ + }{\dot{\varvec{\theta }}}^{{\text{ T}}} \left[ {{\varvec{H}}_{\omega } } \right]_{{\theta_{{{\text{SJ}}}} }}^{{{\text{SJ}}}} {\dot{\varvec{\theta }}}{ + }{\varvec{c}}_{{{\text{SJ}}}} } \right]^{2} ,} \\ \end{array} } \right.$$
(42)
$$\left\{ {\begin{array}{*{20}l} {{}^{3}{\varvec{V}}_{{{\text{WJ}}}} = \left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} {\dot{\varvec{\theta }}}} \right]^{1} ,} \\ {{}^{3}{{\varvec{\varepsilon}}}_{{{\text{WJ}}}} = \left[ {{}^{3}\left[ {{\varvec{J}}_{\omega } } \right]_{{\theta_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} {\varvec{\ddot{\theta }}}{ + }{\dot{\varvec{\theta }}}^{{\text{ T}}} \left[ {{\varvec{H}}_{\omega } } \right]_{{\theta_{{{\text{WJ}}}} }}^{{{\text{WJ}}}} {\dot{\varvec{\theta }}}{ + }{}^{3}{\varvec{c}}_{{{\text{WJ}}}} } \right]^{1} .} \\ \end{array} } \right.$$
(43)

Similarly, according to Eqs. (39) and (40), the velocity and acceleration vectors of all the motion pairs of the parallel joints can be obtained.

4 Simulation Experiment

To verify the method of kinematics analysis, a verification scheme is proposed as shown in Figure 10. Firstly, according to the kinematics information of the target trajectory, the velocity and acceleration vectors of the active pairs are obtained based on the inverse kinematics analysis. Then, the kinematics information of the end-moving platform is obtained according to the forward kinematics analysis.

Figure 10
figure 10

Verification scheme

In this paper, same dimensions of the HRA, target trajectory, and given redundant inputs, as used in our previous study [[29]], are selected, and the first set of solutions for the inverse displacement problem are used as position-orientation information for the HRA.

The target trajectory is as follows:

$${\varvec{g}}_{st} { = }\left[ {\begin{array}{*{20}l} {1} & {0} & {0} & {X_{st} (t)} \\ 0 & {0} & {1} & { - r_{5} - r_{6} } \\ {0} & { - {1}} & {0} & { - r_{4} + Z_{st} (t)} \\ {0} & {0} & {0} & {1} \\ \end{array} } \right]{,}\left\{ {\begin{array}{*{20}l} {X_{st} (t) = h_{1} \sin \left( {\frac{{2{\pi }t}}{T}} \right),} \hfill \\ {Z_{st} (t) = h_{1} - h_{1} \cos \left( {\frac{{2{\pi }t}}{T}} \right),} \hfill \\ {h_{1} = 80\;{\text{mm,}}} \hfill \\ {T = 10\;{\text{s}}{.}} \hfill \\ \end{array} } \right.$$
(44)

β1 and F are selected as the given input variables:

$$\left\{ {\begin{array}{*{20}l} {\beta_{{1}} = - \frac{{h_{2} }}{{2{\pi }}}\sin \left( {\frac{{2{\pi }t}}{T}} \right) + h_{2} \frac{t}{T},\;h_{2} = 10^\circ ,} \\ {\theta_{F} = 0.} \\ \end{array} } \right.$$
(45)

4.1 Inverse Kinematics Analysis

According to the first method of inverse kinematics analysis, the velocity and acceleration vectors of the active inputs can be calculated, as shown in Figure 11.

Figure 11
figure 11

First method of inverse kinematics analysis

Meanwhile, according to the second method of inverse kinematics analysis, the velocity and acceleration vectors of the active inputs can also be calculated, as shown in Figure 12. To verify whether the two methods are equivalent, the calculation errors between the two methods are obtained, as shown in Figure 13. Evidently, the calculation errors are almost equal to 0, and the two methods of inverse kinematics analysis are equivalent.

Figure 12
figure 12

Second method of the inverse kinematics analysis

Figure 13
figure 13

Errors between the two methods of the inverse kinematics analysis

4.2 Forward Kinematics Analysis

The first set of velocity and acceleration vectors of the active pairs are selected for the forward kinematics analysis. According to the method of forward kinematics analysis, the velocity and acceleration vectors of the end-moving platform can be calculated as shown in Figure 14 and 15.

Figure 14
figure 14

Rotation of the end-moving platform

Figure 15
figure 15

Translation of the end-moving platform

Evidently, the orientation of the end-moving platform remains unchanged. To verify the accuracy of the method for forward kinematics analysis, the calculation errors between the forward kinematics and target trajectory are obtained as shown in Figure 16.

Figure 16
figure 16

Translational motion error between the forward kinematics and target trajectory

Clearly, the calculation errors are almost equal to 0, the motion of the end-moving platform are exactly the same as the target trajectory. Conversely, the simulation data obtained from our previous study [29] are used to verify the kinematics analysis method. Then, the calculation errors between the proposed method and simulation in the translation motion are shown in Figure 17.

Figure 17
figure 17

Translational motion error between the proposed method and simulation

Similarly, the errors between the simulation results and theoretical calculation are acceptable, which is mainly due to the difference between the three-dimensional model and numerical solution. Therefore, the accuracy of the proposed methods is verified for forward kinematics analysis and inverse kinematics analysis.

5 Conclusions

  1. (1)

    When compared to other methods with respect to the kinematics analysis of hybrid mechanisms, the proposed methods, based on screw theory and Lie groups Lie algebras, exhibit evident physical significance, and the kinematic transfer matrices (J and H) can be expressed concisely and uniformly.

  2. (2)

    Additionally, the velocity and acceleration vectors of all the motion pairs can be easily obtained, which lays the groundwork for the establishment of dynamics model and design of front-negative feedback control system.

  3. (3)

    The equivalent series mechanism and branch series mechanism are equivalent in dealing with the inverse kinematics analysis. Although the physical significance of transfer matrices based on the two methods are inconsistent, they do not change the transfer properties of the hybrid mechanism.

References

  1. A K Pandey, R Gelin. A mass-produced sociable humanoid robot. IEEE Robotics and Automation Magazine, 2018, 25(3): 41-48.

    Article  Google Scholar 

  2. K Vlachos, Z Doulgeri. A control scheme with a novel DMP-robot coupling achieving compliance and tracking accuracy under unknown task dynamics and model uncertainties. IEEE Robotics and Automation Letters, 2020, 5(2): 2310-2316.

    Article  Google Scholar 

  3. Y Q Wang, L H Wang. Whole-body collision avoidance control design using quadratic programming with strict and soft task priorities. Robotics and Computer Integrated Manufacturing, 2020, 62: 101882.

    Article  Google Scholar 

  4. M J Thomas, M L Joy, A P Sudheer. Kinematic and dynamic analysis of a 3-PRUS spatial parallel manipulator. Chinese Journal of Mechanical Engineering, 2020, 33(1): 1–17.

    Article  Google Scholar 

  5. M J Song, S Guo, X Y Wang, et al. Dynamic analysis and performance verification of a novel hip prosthetic mechanism. Chinese Journal of Mechanical Engineering, 2020, 33(1): 1–17.

    Article  Google Scholar 

  6. X X Chai, N B Zhang, L Y He, et al. Kinematic sensitivity analysis and dimensional synthesis of a redundantly actuated parallel robot for friction stir welding. Chinese Journal of Mechanical Engineering, 2020, 33(1): 1.

    Article  Google Scholar 

  7. S K Mustafa, G L Yang, S H Yeo, et al. Self-calibration of a biologically inspired 7 DOF cable-driven robotic arm. IEEE/ASME Transaction on Mechatronics, 2007, 13(1): 66-75.

    Article  Google Scholar 

  8. F Liu, W Xu, H Huang, et al. Design and analysis of a high-payload manipulator based on a cable-driven serial-parallel mechanism. ASME Journal of Mechanisms and Robotics, 2019, 11(5): 051006.

    Article  Google Scholar 

  9. J J Craig. Introduction to robotics: mechanics and control. New Jersey: Pearson Education, Inc., 2005.

    Google Scholar 

  10. M W Spong, S Hutchinson, M Vidyasagar. Robot modeling and control. New York: John Wiley & Sons, Inc., 2006.

    Google Scholar 

  11. Y B Li, P Sun, H Qi, et al. Prototyping of a novel anthropomorphic mechanical leg. Advances in Mechanical Engineering, 2019, 11(12): 1-12.

    Google Scholar 

  12. J Pinskier, B Shirinzadeh, L Clark, et al. Development of a 4-DOF haptic micromanipulator utilizing a hybrid parallel-serial flexure mechanism. Mechatronics, 2018, 50: 55-68.

    Article  Google Scholar 

  13. K Liu, Y Chen, J Q Xu, et al. Fuzzy torque control of the bionic flexible manipulator actuated by pneumatic muscle actuators. Chinese Journal of Mechanical Engineering, 2019, 32(1): 79.

    Article  Google Scholar 

  14. M X Ling, J Y Cao, L L Howell, et al. Kinetostatic modeling of complex compliant mechanisms with serial-parallel substructures: A semi-analytical matrix displacement method. Mechanism and Machine Theory, 2018, 125: 169-184.

    Article  Google Scholar 

  15. B Hu. Complete kinematics of a serial-parallel manipulator formed by two Tricept parallel manipulators connected in serials. Nonlinear Dynamics, 2014, 78(4): 2685-2698.

    Article  Google Scholar 

  16. R S Ball. A treatise on the theory of screws. Cambridge: Cambridge University Press, 1998.

    MATH  Google Scholar 

  17. R W Brockett. Linear feedback systems and the groups of Galois and Lie. Linear Algebra and Its Applications, 1983, 50: 45-60.

    Article  MathSciNet  Google Scholar 

  18. R M Murray, Z X Li, S S Sastry. A mathematical introduction to robotic manipulation. Florida: CRC press Inc., 1994.

    MATH  Google Scholar 

  19. R G Wang, J X Sun, J S Dai. Design analysis and type synthesis of a petal-inspired space deployable-foldable mechanism. Mechanism and Machine Theory, 2019, 141: 151-170.

    Article  Google Scholar 

  20. J S Dai. Geometrical foundations and screw algebra for mechanisms and robotics. Beijing: Higher Education Press, 2014. (in Chinese).

    Google Scholar 

  21. C G Dong, H T Liu, T Huang, et al. A screw theory based semi-analytical approach for elastodynamics of the tricept robot. ASME Journal of Mechanisms and Robotics, 2019, 11(3): 031005.

    Article  Google Scholar 

  22. Y J Wang, B Belzile, J Angeles, et al. Kinematic analysis and optimum design of a novel 2PUR-2RPU parallel robot. Mechanism and Machine Theory, 2019, 139: 407-423.

    Article  Google Scholar 

  23. W Ye, Q C Li, X X Chai. New family of 3-DOF up-equivalent parallel mechanisms with high rotational capability. Chinese Journal of Mechanical Engineering, 2018, 31: 12.

    Article  Google Scholar 

  24. Y Qi, T Sun, Y M Song. Multi-objective optimization of parallel tracking mechanism considering parameter uncertainty. ASME Journal of Mechanisms and Robotics, 2018, 10(4): 041006.

    Article  Google Scholar 

  25. T Sun, S F Yang, T Huang, et al. A finite and instantaneous screw based approach for topology design and kinematic analysis of 5-axis parallel kinematic machines. Chinese Journal of Mechanical Engineering, 2018, 31: 44.

    Article  Google Scholar 

  26. M Gabardi, M Solazzi, A Frisoli. An optimization procedure based on kinematics analysis for the design parameters of a 4-UPU parallel manipulator. Mechanism and Machine Theory, 2019, 133: 211-228.

    Article  Google Scholar 

  27. X J Liu, G Han, F G Xie, et al. A novel parameter optimization method for the driving system of high-speed parallel robots. ASME Journal of Mechanisms and Robotics, 2018, 10(4): 041010.

    Article  Google Scholar 

  28. X J Liu, G Han, F G Xie, et al. A novel acceleration capacity index based on motion/force transmissibility for high-speed parallel robots. Mechanism and Machine Theory, 2018, 126: 155-170.

    Article  Google Scholar 

  29. P Sun, Y B Li, Z S Wang, et al. Inverse displacement analysis of a novel hybrid humanoid robotic arm. Mechanism and Machine Theory, 2020, 147: 103743.

    Article  Google Scholar 

Download references

Acknowledgements

The authors are grateful to Professor Shiming Ji of Zhejiang University of Technology for his critical discussions and readings during manuscript preparation.

Funding

Supported by Zhejiang Province Foundation for Distinguished Young Scholars of China (Grant No. LR18E050003), National Natural Science Foundation of China (Grant Nos. 51975523, 51475424, 51905481), and Open Foundation of the State Key Laboratory of Fluid Power and Mechatronic Systems (Grant No. GZKF-201906).

Author information

Authors and Affiliations

Authors

Contributions

YL supervised the entire trial; PS wrote the manuscript; KC, WZ, QZ, and BC assisted in sampling and laboratory analyses. All authors read and approved the final manuscript.

Authors’ Information

Peng Sun, born in 1991, is a postdoctoral researcher at College of Mechanical Engineering, Zhejiang University of Technology, China. He received his PhD degree from Zhejiang University of Technology, China, in 2020. His research interests include kinematics analysis, dynamics modeling, and optimal design of parallel mechanisms.

Yanbiao Li, born in 1978, is currently a professor at College of Mechanical Engineering, Zhejiang University of Technology, China. He received his PhD degree from Yanshan University, China, in 2008. His research interests include kinematics and dynamics of parallel mechanisms and precision machining.

Ke Chen, born in 1997, is currently a master candidate at College of Mechanical Engineering, Zhejiang University of Technology, China.

Wentao Zhu, born in 1996, is currently a master candidate at College of Mechanical Engineering, Zhejiang University of Technology, China.

Qi Zhong, born in 1991, is currently a lecturer at College of Mechanical Engineering, Zhejiang University of Technology, China. He received his PhD degree from State Key Laboratory of Fluid Power and Mechatronic Systems, Zhejiang University, China, in 2019.

Bo Chen, born in 1990, is currently a lecturer at College of Mechanical Engineering, Zhejiang University of Technology, China. He received his PhD degree from Yanshan University, China, in 2019.

Corresponding author

Correspondence to Yanbiao Li.

Ethics declarations

Competing Interests

The authors declare no competing financial interests.

Rights and permissions

Open Access This 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/.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Sun, P., Li, Y., Chen, K. et al. Generalized Kinematics Analysis of Hybrid Mechanisms Based on Screw Theory and Lie Groups Lie Algebras. Chin. J. Mech. Eng. 34, 98 (2021). https://doi.org/10.1186/s10033-021-00610-2

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s10033-021-00610-2

Keywords