Skip to main content
Log in

Degeneracy conditions of the dynamic model of parallel robots

  • Published:
Multibody System Dynamics Aims and scope Submit manuscript

Abstract

Despite their well-known advantages in terms of higher intrinsic rigidity, larger payload-to-weight ratio, and higher velocity and acceleration capacities, parallel robots have drawbacks. Among them, the most important one is surely the presence of singularities in the workspace, which divide the workspace into different aspects (each aspect corresponding to one or more assembly modes) and near which the performance is considerably reduced.

In order to increase the reachable workspace of parallel robots, a promising solution consists in the definition of optimal trajectories passing through the singularities to change either the leg working modes or the robot assembly modes. Previous works on the field have shown that it is possible to define optimal trajectories that allow the passing through the robot type 2 singularities. Such trajectories must respect a physical criterion that can be obtained through the analysis of the degeneracy conditions of the parallel robot inverse dynamic model.

However, the mentioned works were not complete: they lacked a degeneracy condition of the parallel robot inverse dynamic model, which is not due to type 2 singularity anymore, but to a serial singularity. Crossing a serial singularity is appealing as in that case we can change the robot leg working mode and then potentially access to other workspace zones. This absence is due to the fact that the authors used a reduced dynamic model, which was not taking into account all link dynamic parameters.

The present paper aims to fill this gap by providing a complete study of the degeneracy conditions of the parallel robot dynamic model and by demonstrating that it is possible to cross the type 2, but also serial singularity, by defining trajectories that respect some given criteria obtained from the analysis of the degeneracy of the robot dynamic model. It also aims to demonstrate that the serial singularities have impacts on the robot effort transmission, which is a point that is usually bypassed in the literature. All theoretical developments are validated through simulations and experiments.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24

Similar content being viewed by others

Notes

  1. It is necessary to mention that in this paper, joint clearance and elasticity are not considered.

  2. The number of standard parameters of a free rigid body can be reduced to 10 inertial parameters since it is not necessary to consider the parameters \(ia_{j}\), \(fv_{j}\), \(fs_{j}\), and \(\boldsymbol{\tau}_{\mathit{off}_{j}}\) related to actuated joint drive chains.

  3. In the following of the paper, R and P stand for passive revolute and prismatic joints respectively, whereas R and P stand for active revolute and prismatic joints, respectively.

References

  1. Merlet, J.P.: Parallel Robots, 2nd edn. Springer, Berlin (2006)

    MATH  Google Scholar 

  2. Conconi, M., Carricato, M.: A new assessment of singularities of parallel kinematic chains. IEEE Trans. Robot. 25(4), 757–770 (2009)

    Article  Google Scholar 

  3. Gosselin, C.M., Angeles, J.: Singularity analysis of closed-loop kinematic chains. IEEE Trans. Robot. Autom. 6(3), 281–290 (1990)

    Article  Google Scholar 

  4. Zlatanov, D., Bonev, I.A., Gosselin, C.M.: Constraint singularities of parallel mechanisms. In: Proceedings of the IEEE International Conference on Robotics and Automation (ICRA 2002), May 2002 (2002)

    Google Scholar 

  5. Kong, X., Gosselin, C.M.: A class of 3-dof translational parallel manipulators with linear input-output equations. In: Proceedings of the Workshop on Fundamental Issues and Future Research Directions for Parallel Mechanisms and Manipulators, Québec City, QC, Canada, pp. 3–4 (2002)

    Google Scholar 

  6. Gogu, G.: Structural synthesis of fully-isotropic translational parallel robots via theory of linear transformations. Eur. J. Mech. A, Solids 23(6), 1021–1039 (2004)

    Article  MATH  Google Scholar 

  7. Carricato, M., Parenti-Castelli, V.: Singularity-free fully-isotropic translational parallel manipulators. Int. J. Robot. Res. 21(2), 161–174 (2002)

    Article  Google Scholar 

  8. Gosselin, C.M.: Compact dynamic models for the tripteron and quadrupteron parallel manipulators. Proc. Inst. Mech. Eng., Part I, J. Syst. Control Eng. 223(1), 1–11 (2009)

    Article  Google Scholar 

  9. Kong, X., Gosselin, C.M.: Forward displacement analysis of a quadratic 4-dof 3T1R parallel manipulator: The Quadrupteron. Meccanica 46(1), 147–154 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  10. Rizk, R., Munteanu, M.Gh., Fauroux, J.C., Gogu, G.: A semi-analytical stiffness model of parallel robots from the Isoglide family via the sub-structuring principle. In: Proceedings of the 12th IFToMM World Congress, Besançon, France (2007)

    Google Scholar 

  11. Seward, N., Bonev, I.A.: A new 6-dof parallel robot with simple kinematic model. In: Proceedings of the 2014 IEEE International Conference on Robotics and Automation (ICRA 2014), Hong Kong, China (2014)

    Google Scholar 

  12. Briot, S., Pashkevich, A., Chablat, D.: Optimal technology-oriented design of parallel robots for high-speed machining applications. In: Proceedings of the 2010 IEEE International Conference on Robotics and Automation (ICRA 2010), Anchorage, Alaska, USA (2010)

    Google Scholar 

  13. Liu, X.-J., Wang, J., Pritschow, G.: Performance atlases and optimum design of planar 5R symmetrical parallel mechanisms. Mech. Mach. Theory 41(2), 119–144 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  14. Yi, B.Y., Freeman, R.A., Tesar, D.: Force and stiffness transmission in redundantly actuated mechanisms: The case for a spherical shoulder mechanism. In: Robotics, Spatial Mechanisms, Mechanical Systems, vol. 45, pp. 163–172 (1994)

    Google Scholar 

  15. Kurtz, R., Hayward, V.: Multiple-goal kinematic optimization of a parallel spherical mechanism with actuator redundancy. IEEE Trans. Robot. Autom. 8(5), 644–651 (1992)

    Article  Google Scholar 

  16. Muller, A.: Internal preload control of redundantly actuated parallel manipulators—its application to backlash avoiding control. IEEE Trans. Robot. 21(4), 668–677 (2005)

    Article  Google Scholar 

  17. Kotlarski, J., Trung, D.T., Heimann, B., Ortmaier, T.: Optimization strategies for additional actuators of kinematically redundant parallel kinematic machines. In: Proceedings of the IEEE International Conference on Robotics and Automation (ICRA 2010), pp. 656–661 (2010)

    Google Scholar 

  18. Arakelian, V., Briot, S., Glazunov, V.: Increase of singularity-free zones in the workspace of parallel manipulators using mechanisms of variable structure. Mech. Mach. Theory 43(9), 1129–1140 (2008)

    Article  MATH  Google Scholar 

  19. Rakotomanga, N., Chablat, D., Caro, S.: Kinetostatic performance of a planar parallel mechanism with variable actuation. In: Advances in Robot Kinematics (2008)

    Google Scholar 

  20. Bourbonais, F., Bigras, P., Bonev, I.A.: Minimum-time trajectory planning and control of a reconfigurable pick-and-place parallel robot. IEEE/ASME Trans. Mechatron. 20(2), 740–749 (2015)

    Article  Google Scholar 

  21. Campos, L., Bourbonais, F., Bonev, I.A., Bigras, P.: Development of a five-bar parallel robot with large workspace. In: Proceedings of the ASME 2010 International Design Engineering Technical Conferences, Montréal, QC, Canada (2010)

    Google Scholar 

  22. Zein, M., Wenger, P., Chablat, D.: Non-singular assembly-mode changing motions for 3-RPR parallel manipulators. Mech. Mach. Theory 43(4), 480–490 (2008)

    Article  MATH  Google Scholar 

  23. Briot, S., Arakelian, V.: Optimal force generation of parallel manipulators for passing through the singular positions. Int. J. Robot. Res. 27(8), 967–983 (2008)

    Article  Google Scholar 

  24. Kemal Ider, S.: Inverse dynamics of parallel manipulators in the presence of drive singularities. Mech. Mach. Theory 40, 33–44 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  25. Hesselbach, J., Wrege, J., Raatz, A., Becker, O.: Aspects on the design of high precision parallel robots. Assem. Autom. 24(1), 49–57 (2004)

    Article  Google Scholar 

  26. Briot, S., Arakelian, V., Guegan, S.: Design and prototyping of a partially decoupled 4-dof 3t1r parallel manipulator with high-load carrying capacity. J. Mech. Des. 130(12), 122303 (2008)

    Article  Google Scholar 

  27. Briot, S., Gautier, M.: Global identification of joint drive gains and dynamic parameters of parallel robots. Multibody Syst. Dyn. 33(1), 3–26 (2015)

    Article  MathSciNet  MATH  Google Scholar 

  28. Ibrahim, O., Khalil, W.: Inverse and direct dynamic models of hybrid robots. Mech. Mach. Theory 45, 627–640 (2010)

    Article  MATH  Google Scholar 

  29. Khalil, W., Dombre, E.: Modeling, Identification and Control of Robots. Hermes Penton, London (2002)

    MATH  Google Scholar 

  30. Pfurner, M., Husty, M.L.: Implementation of a new and efficient algorithm for the inverse kinematics of serial 6R chains. In: New Trends in Mechanism Science, pp. 91–98. Springer, Berlin (2010)

    Chapter  Google Scholar 

  31. Bonev, I.A.: Geometric analysis of parallel mechanisms. PhD thesis, Université Laval, QC, Canada (Nov 2002)

  32. Caro, S., Moroz, G., Gayral, T., Chablat, D., Chen, C.: Singularity analysis of a six-dof parallel manipulator using Grassmann–Cayley algebra and Gröbner bases. In: Proceedings of the Symposium on Brain, Body and Machine, Montreal, QC, Canada, pp. 10–12 (2010)

    Google Scholar 

  33. Huang, T., Wang, M., Yang, S., Sun, T., Chetwynd, D.G., Xie, F.: Force/motion transmissibility analysis of six degree of freedom parallel mechanisms. J. Mech. Robot. 6(3), 031010 (2014)

    Article  Google Scholar 

  34. Chang, W.T., Lin, C.C., Lee, J.J.: Force transmissibility performance of parallel manipulators. J. Robot. Syst. 20(11), 659–670 (2003)

    Article  MATH  Google Scholar 

  35. Wang, J.S., Wu, C., Liu, X.J.: Performance evaluation of parallel manipulators: Motion/force transmissibility and its index. Mech. Mach. Theory 45(10), 1462–1476 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  36. Gautier, M.: Dynamic identification of robots with power model. In: Proceedings IEEE ICRA, Albuquerque, USA, pp. 1922–1927 (1997)

    Google Scholar 

  37. Pagis, G., Bouton, N., Briot, S., Martinet, P.: Design of a controller for enlarging parallel robots workspace through Type 2 singularity crossing. In: Proceedings of 2014 IEEE International Conference on Robotics and Automation (ICRA 2014), Hong Kong, China (2014)

    Google Scholar 

  38. Gautier, M., Vandanjon, P., Presse, C.: Identification of inertial and drive gain parameters of robots. In: Proceedings IEEE CDC, Lake Buena Vista, FL, USA, pp. 3764–3769 (1994)

    Google Scholar 

Download references

Acknowledgements

This work was sponsored by the French government research program “Investissements d’avenir” through the RobotEx Equipment of Excellence (ANR-10-EQPX-44) and by the French Institute for Advanced Mechanics (IFMA).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sébastien Briot.

Appendices

Appendix A: Kinematics of the five-bar mechanism

For the five-bar mechanism, the loop-closure equations (10) can be written as (\(i=1,2\))

$$ \mathbf{0} = x \mathbf{x}_{0} + y \mathbf{y}_{0} - d_{2i} \mathbf{x}_{1i} - d_{3i} \mathbf{x}_{2i}, $$
(66)

which can be expanded in the base frame as

$$ \begin{aligned} 0 &= x - x_{A_{i}} - d_{2i}\cos q_{1i} - d_{3i}\cos(q_{1i}+q_{2i}), \\ 0 &= y - y_{A_{i}} - d_{2i}\sin q_{1i} - d_{3i}\sin(q_{1i}+q_{2i}), \end{aligned} $$
(67)

where \(x\) and \(y\) are the end-effector coordinates, and

$$ 0 = \pi- q_{11}-q_{21}-q_{31} + q_{12}+q_{22}, $$
(68)

where \(x_{A_{i}}\) and \(y_{A_{i}}\) are the position coordinates along \(\mathbf{x}_{0}\) and \(\mathbf{y}_{0}\) axes for the point \(A_{i}\).

From (67), the reduced loop-closure equations (11), which directly relate the displacements of the actuated joints to the moving platform coordinates, can be obtained after deleting from (67) the terms in \(\cos(q_{1i}+q_{2i})\) or \(\sin (q_{1i}+q_{2i})\) (for \(i=1, 2\)):

$$ d_{3i}^{2} = (x - x_{B_{i}} )^{2} + (y - y_{B_{i}} )^{2}, $$
(69)

where \(x_{B_{i}}=x_{A_{i}} + d_{2i}\cos q_{1i}\) and \(y_{B_{i}}=y_{A_{i}} + d_{2i}\sin q_{1i}\) are the position coordinates of point \(B_{i}\).

Then,

$$ x= f_{i} y + k_{i},\qquad y= \frac{-p_{i}\pm\sqrt{p_{i}^{2} - 4 g_{i} r_{i}}}{2 g_{i} }, $$
(70)

where

$$ \begin{aligned} f_{i}&=-\frac{y_{B_{2}}-y_{1}}{x_{B_{2}}-x_{B_{1}}},\qquad g_{i}=f_{i}^{2}+1, \\ k_{i}&=\frac{x_{B_{1}}^{2}+y_{B_{1}}^{2}-y_{B_{1}}^{2}-y_{B_{2}}^{2}}{2(x_{B_{2}}-x_{B_{1}})}, \\ p_{i}&=2f_{i}(k_{i}-x_{B_{1}})-2y_{B_{1}}, \\ r_{i}&=x_{B_{1}}^{2}+y_{B_{1}}^{2}-d_{3i}^{2}+k_{1}^{2}-2k_{1}x_{B_{1}}. \end{aligned} $$
(71)

In (70), the sign “±” denotes the two robot assembly modes.

Then, it comes easily from (67) and (68) that:

$$\begin{aligned} q_{2i} =& \tan^{-1} \biggl(\frac{y-y_{B_{i}}}{x-x_{B_{i}}} \biggr), \end{aligned}$$
(72)
$$\begin{aligned} q_{31} =& \pi- q_{11}-q_{21} + q_{12}+q_{22}. \end{aligned}$$
(73)

Now, differentiating (69) with respect to time and simplifying, we can find the matrices \(\mathbf{A}_{p}\) and \(\mathbf{B}_{p}\) of (15):

$$ \mathbf{A}_{p}= \left[ \textstyle\begin{array}{c@{\quad}c} c_{121} & s_{121} \\ c_{122} & s_{122} \end{array}\displaystyle \right] = \begin{bmatrix} \mathbf{x}_{21}^{T} \\ \mathbf{x}_{22}^{T} \end{bmatrix} , $$
(74)

where \(c_{12i}=\cos(q_{1i}+q_{2i})\) and \(s_{12i}=\sin(q_{1i}+q_{2i})\) (\(i=1,2\)),

$$ \mathbf{B}_{p}= -d_{2i} \left[ \textstyle\begin{array}{c@{\quad}c} \sin q_{21} & 0 \\ 0 & \sin q_{22} \end{array}\displaystyle \right] , $$
(75)

leading thus to

$$ \mathbf{A}_{p} \begin{bmatrix} \dot{x} \\ \dot{y} \end{bmatrix} + \mathbf{B}_{p} \begin{bmatrix} \dot{q}_{11} \\ \dot{q}_{12} \end{bmatrix} = \mathbf{0}. $$
(76)

Now, differentiating (66) and (68) with respect to time, we can find that

$$\begin{aligned} \mathbf{0} =& \dot{x} \mathbf{x}_{0} + \dot{y} \mathbf{y}_{0} - d_{2i} \mathbf {y}_{1i} \dot{q}_{1i} - d_{3i} \mathbf{y}_{2i} (\dot{q}_{1i}+\dot{q}_{2i}), \end{aligned}$$
(77)
$$\begin{aligned} 0 =& - \dot{q}_{11}- \dot{q}_{21}- \dot{q}_{31} + \dot{q}_{12}+ \dot{q}_{22}. \end{aligned}$$
(78)

Projecting these equations in the frame of the link \(2i\) and developing, we get that

$$ \left[ \textstyle\begin{array}{c@{\quad}c} c_{12i} & s_{12i} \\ -s_{12i} & c_{12i} \end{array}\displaystyle \right] \left[ \textstyle\begin{array}{c} \dot{x} \\ \dot{y} \end{array}\displaystyle \right] = \left[ \textstyle\begin{array}{c@{\quad}c} d_{2i} \sin q_{2i} & 0 \\ d_{2i} \cos q_{2i}+d_{3i} & d_{3i} \end{array}\displaystyle \right] \begin{bmatrix} \dot{q}_{1i} \\ \dot{q}_{2i} \end{bmatrix} $$
(79)

for \(i=1, 2\).

Combining (78) and (79) and noticing that the first line of (79) can be disregarded as the velocity \(\dot{q}_{2i}\) of the passive joints at \(B_{i}\) is not included in this equation, we get

$$\begin{aligned} \left[ \textstyle\begin{array}{c@{\quad}c} -s_{121} & c_{121} \\ -s_{122} & c_{122} \\ 0 & 0 \end{array}\displaystyle \right] \begin{bmatrix} \dot{x} \\ \dot{y} \end{bmatrix} =& \left[ \textstyle\begin{array}{c@{\quad}c} d_{21} \cos q_{21}+d_{31} & 0 \\ 0& d_{22} \cos q_{22}+d_{32} \\ -1 & 1 \end{array}\displaystyle \right] \begin{bmatrix} \dot{q}_{11} \\ \dot{q}_{12} \end{bmatrix} \\ &{}+ \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} d_{31} & 0 & 0 \\ 0 & d_{32} & 0 \\ -1 & 1 & -1 \end{array}\displaystyle \right] \begin{bmatrix} \dot{q}_{21} \\ \dot{q}_{31} \\ \dot{q}_{22} \end{bmatrix} , \end{aligned}$$
(80)

which can be rewritten as

$$ \mathbf{J}_{tk}\mathbf{v} - \mathbf{J}_{k_{a}}\dot{ \mathbf{q}}_{a} - \mathbf{J}_{k_{d}}\dot{\mathbf{q}}_{d} = \mathbf{0} $$
(81)

with

$$\begin{aligned} \mathbf{J}_{tk} =& \left[ \textstyle\begin{array}{c@{\quad}c} -s_{121} & c_{121} \\ -s_{122} & c_{122} \\ 0 & 0 \end{array}\displaystyle \right] , \end{aligned}$$
(82)
$$\begin{aligned} \mathbf{J}_{k_{a}} =& \left[ \textstyle\begin{array}{c@{\quad}c} d_{21} \cos q_{21}+d_{31} & 0\\ 0 & d_{22} \cos q_{22}+d_{32} \\ -1 & 1 \end{array}\displaystyle \right] , \end{aligned}$$
(83)
$$\begin{aligned} \mathbf{J}_{k_{d}} =& \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} d_{31} & 0 & 0 \\ 0 & 0 & d_{32} \\ -1 & -1 & 1 \end{array}\displaystyle \right] , \end{aligned}$$
(84)

and \(\mathbf{v}^{T} = [\dot{x} \,\, \dot{y}]\), \(\dot{\mathbf{q}}_{a}^{T} = [\dot{q}_{11} \,\, \dot{q}_{12}]\), and \(\dot{\mathbf{q}}_{d}^{T} = [\dot{q}_{21} \,\, \dot{q}_{31} \,\, \dot{q}_{22}]\).

From (74) and (84) it is possible to observe that

  • the matrix \(\mathbf{J}_{k_{d}}\) is constant and never singular; as a result, the robot does not encounter LPJTS singularities,

  • the matrix \(\mathbf{A}_{p}\) is singular when \(\mathbf{x}_{21}\) and \(\mathbf{x}_{22}\) are collinear, which is the condition of type 2 singularity mentioned in Sect. 3.1.

All velocities and accelerations quantities can be then computed from (76) and (81) by using relations (12) and (25) given in Sect. 2.3.

Appendix B: Dynamics of the five-bar mechanism

The inverse dynamic model of the open-loop virtual structure of the five-bar mechanism can be obtained by noticing that:

  • leg 1 is a planar 3R robot in which the last body is massless,

  • leg 2 is a planar 2R robot.

Its inverse dynamic model may be found in [38]:

$$\begin{aligned} \tau_{t_{11}} =& \bigl(zz_{11} + ia_{11} + d_{2i}^{2} m_{21} \bigr)\ddot {q}_{11}+zz_{21}(\ddot{q}_{11}+ \ddot{q}_{21}) \\ &{}+d_{2i}mx_{21} \bigl((2\ddot{q}_{11}+ \ddot{q}_{21})\cos q_{21}-\dot{q}_{21}(2\dot {q}_{11}+\dot{q}_{21})\sin q_{21} \bigr) \\ &{}+d_{2i}my_{21} \bigl((2\ddot {q}_{11}+ \ddot{q}_{21})\sin q_{21}+\dot{q}_{21}(2 \dot{q}_{11}+\dot {q}_{21})\cos q_{21} \bigr) \\ &{}+fs_{11}\,\mathrm{sign}(\dot{q}_{11}) + fv_{11}\dot{q}_{11}, \\ \tau_{t_{21}} =& zz_{21}(\ddot{q}_{11}+ \ddot{q}_{21}) +d_{2i}mx_{21} \bigl( \ddot{q}_{11}\cos q_{21}+\dot{q}_{11}^{2} \sin q_{21} \bigr) \\ &{}+d_{2i}my_{21} \bigl(\ddot{q}_{11}\sin q_{21}-\dot {q}_{11}^{2}\cos q_{21}\bigr) \\ &{}+ fs_{21}\,\mathrm{sign}(\dot{q}_{21}) + fv_{21} \dot{q}_{21}, \\ \tau_{t_{31}} =& fs_{31}\,\mathrm{sign}(\dot{q}_{31}) + fv_{31} \dot{q}_{31}, \\ \tau_{t_{12}} =& \bigl(zz_{12} + ia_{12} + d_{2i}^{2} m_{22} \bigr)\ddot {q}_{12}+zz_{22}( \ddot{q}_{12}+\ddot{q}_{22}) \\ &{}+d_{2i}mx_{22} \bigl((2\ddot{q}_{12}+ \ddot{q}_{22})\cos q_{22}-\dot{q}_{22}(2\dot {q}_{12}+\dot{q}_{22})\sin q_{22} \bigr) \\ &{}+d_{2i}my_{22} \bigl((2\ddot {q}_{12}+ \ddot{q}_{22})\sin q_{22}+\dot{q}_{22}(2 \dot{q}_{12}+\dot {q}_{22})\cos q_{22} \bigr) \\ &{}+fs_{12}\,\mathrm{sign}(\dot{q}_{12}) + fv_{12} \dot{q}_{12}, \\ \tau_{t_{22}} =& zz_{22}(\ddot{q}_{12}+ \ddot{q}_{22}) +d_{2i}mx_{22} \bigl( \ddot{q}_{12}\cos q_{22}+\dot{q}_{12}^{2} \sin q_{22} \bigr) \\ &{}+d_{2i}my_{22} \bigl(\ddot{q}_{12}\sin q_{22}-\dot {q}_{12}^{2}\cos q_{22} \bigr) \\ &{}+ fs_{22}\,\mathrm{sign}(\dot{q}_{22}) + fv_{22} \dot{q}_{22}, \end{aligned}$$
(85)

where

  • the parameters \(zz_{ji}\), \(ia_{ji}\), \(m_{ji}\), \(mx_{ji}\), \(my_{ji}\), \(fs_{ji}\), \(fv_{ji}\) are defined in Sect. 2.2 (\(j=1,2,3\)),

  • the angles \(q_{ji}\) and length \(d_{2i}\) are defined in Table 1 and Fig. 4,

  • \(\tau_{t_{1i}}\) is the torque of the virtual actuator located at point \(A_{i}\), \(\tau_{t_{2i}}\) is the torque of the virtual actuator located at point \(B_{i}\), and \(\tau_{t_{3i}}\) is the torque of the virtual actuator located at point \(C_{i}\). The vector \(\boldsymbol{\tau }_{t_{a}}\) of (3) stacks all components \(\boldsymbol{\tau }_{t_{a}}= [\tau_{t_{11}}\ \ \tau_{t_{12}} ]^{T}\) whereas the vector \(\boldsymbol{\tau}_{t_{d}}\) of (4) stacks all vectors \(\boldsymbol{\tau}_{t_{d}}= [\tau_{t_{21}}\ \ \tau_{t_{31}}\ \ \tau _{t_{22}} ]^{T}\).

The inverse dynamic model of the free body corresponding to the end-effector (body 4) in the virtual system is

$$ \begin{aligned} \tau_{p_{1}} &= m_{4}\ddot{x}, \\ \tau_{p_{2}} &= m_{4}\ddot{y}, \end{aligned} $$
(86)

with \(\tau_{p_{j}}\) being the \(j\)th components of the vector \(\boldsymbol {\tau}_{pr}\) of (9); \(m_{4}\) is the end-effector mass.

Combining these expressions with those of Appendix A into the equations of Sect. 2.3, we can straightforwardly compute the inverse dynamic model of the five-bar mechanism.

Then, for analyzing the degeneracy conditions of expression (37), let us compute the term \(\mathbf{w}_{p}\). For that, let us rewrite the vector \(\boldsymbol{\tau}_{t_{d}}\) under the form

$$ \boldsymbol{\tau}_{t_{d}}=\mathbf{M}_{d}(\mathbf{q_{t}}) \ddot{\mathbf {q}}_{t}+\mathbf{c}_{d}(\mathbf{q}_{t}, \dot{\mathbf{q}}_{t}), $$
(87)

where

$$ \mathbf{M}_{d}= \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c@{\quad}c@{\quad}c} m_{d}^{11} & 0 & zz_{21} & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 \\ 0 & m_{d}^{32} & 0 & 0 & zz_{22} \end{array}\displaystyle \right] $$
(88)

with \(m_{d}^{11}=zz_{21}+d_{2i}(mx_{21}\cos q_{21} + my_{21}\sin q_{21})\), \(m_{d}^{32}=zz_{22}+d_{2i}(mx_{22}\cos q_{22} + my_{22}\sin q_{22})\), and

$$\begin{aligned} \mathbf{c}_{d} =& \left[ \textstyle\begin{array}{c@{\quad}c} d_{21}mx_{21}\sin q_{21} - d_{21}my_{21}\cos q_{21} & 0 \\ 0 & 0 \\ 0 & d_{22}mx_{22}\sin q_{22} - d_{22}my_{22}\cos q_{22} \end{array}\displaystyle \right] \begin{bmatrix} \dot{q}_{11}^{2}\\ \dot{q}_{12}^{2} \end{bmatrix} \\ &{} + \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} fv_{21} & 0 & 0 \\ 0 & fv_{31} & 0 \\ 0 & 0 & fv_{22} \end{array}\displaystyle \right] \begin{bmatrix} \dot{q}_{21}\\ \dot{q}_{31} \\ \dot{q}_{22} \end{bmatrix} + \begin{bmatrix} fs_{21} \,\mathrm{sign}(\dot{q}_{21})\\ fs_{31} \,\mathrm{sign}(\dot{q}_{31}) \\ fs_{22} \,\mathrm{sign}(\dot{q}_{22}) \end{bmatrix} \\ =& \mathbf{C}_{d}^{r} \begin{bmatrix} \dot{q}_{11}^{2}\\ \dot{q}_{12}^{2} \end{bmatrix} + \mathbf{F}_{v_{d}} \dot{\mathbf{q}}_{d} + \mathbf{F}_{s_{d}}. \end{aligned}$$
(89)

Introducing (14), (20), (22), and (25) into (88) and simplifying and skipping all mathematical derivations, we get

$$ \boldsymbol{\tau}_{t_{d}}=\mathbf{M}_{d}^{x}( \mathbf{x},\mathbf{q}_{t}) \dot {\mathbf{v}} + \mathbf{c}_{d}^{x}( \mathbf{x},\mathbf{q}_{t},\mathbf{v}), $$
(90)

where

$$ \mathbf{M}_{d}^{x}=\mathbf{M}_{d} \begin{bmatrix} \mathbf{J}_{p}^{-1} \\ \mathbf{J}_{q_{d}} \end{bmatrix} $$
(91)

and

$$ \mathbf{c}_{d}^{x}=\mathbf{M}_{d} \begin{bmatrix} \mathbf{J}_{p}^{d} \\ \mathbf{J}_{q_{d}}^{d} \end{bmatrix} \mathbf{v} + \mathbf{C}_{d}^{r} \begin{bmatrix} (\mathbf{j}_{1}^{\mathrm{inv}}\mathbf{v})^{2}\\ (\mathbf {j}_{2}^{\mathrm{inv}}\mathbf{v})^{2} \end{bmatrix} + \mathbf{F}_{v_{d}} \mathbf{J}_{q_{d}} \mathbf{v} + \mathbf{F}_{s_{d}} $$
(92)

with \(\mathbf{j}_{i}^{\mathrm{inv}}\) the \(i\)th line of the matrix \(\mathbf {J}_{p}^{-1}=-\mathbf{B}_{p}^{-1} \mathbf{A}_{p}= \bigl[ {\scriptsize\begin{matrix}{} \mathbf{j}_{1}^{\mathrm{inv}} \cr \mathbf{j}_{2}^{\mathrm{inv}} \end{matrix}}\bigr] \) defined in Appendix A, and \(\mathbf{J}_{q_{d}}\), \(\mathbf{J}_{p}^{d}\), and \(\mathbf{J}_{q_{d}}^{d}\) three matrices defined at (20), (22), and (25).

Appendix C: Kinematics of the Tripteron

For the Tripteron, the loop-closure equations (10) can be written as (\(i=1,2,3\))

$$ \mathbf{0} = x \mathbf{x}_{0} + y \mathbf{x}_{0} + z \mathbf{z}_{0} - \mathbf {x}_{A_{i}} - \mathbf{x}_{D_{i}P}- q_{1i}\mathbf{x}_{1i} - d_{3i} \mathbf {x}_{2i} - d_{4i} \mathbf{x}_{3i}, $$
(93)

which can be expanded in the leg \(i\) frame (Fig. 6(b)) as

$$ \begin{aligned} 0 &= {}^{i} x_{D_{i}} - {}^{i} x_{A_{i}} - d_{2i}\cos q_{2i} - d_{3i}\cos (q_{2i}+q_{3i}), \\ 0 &= {}^{i} y_{D_{i}} - {}^{i} y_{A_{i}} - d_{2i}\sin q_{2i} - d_{3i}\sin (q_{2i}+q_{3i}), \\ 0 &= {}^{i} z_{D_{i}} - r_{1i}, \end{aligned} $$
(94)

and

$$ 0 = q_{2i}+q_{3i}+q_{4i}, $$
(95)

where \({}^{i} x_{D_{i}}\), \({}^{i} y_{D_{i}}\), and \({}^{i} z_{D_{i}}\) are the point \(D_{i}\) coordinates expressed in the frame of the leg \(i\),

$$\begin{aligned} &{}^{1} x_{D_{1}} = x, \qquad {}^{1} y_{D_{1}} = y, \qquad {}^{1} z_{D_{1}} = z, \end{aligned}$$
(96)
$$\begin{aligned} &{}^{2} x_{D_{2}} = y, \qquad {}^{2} y_{D_{2}} = z, \qquad {}^{2} z_{D_{2}} = x, \end{aligned}$$
(97)
$$\begin{aligned} &{}^{3} x_{D_{3}} = z, \qquad {}^{3} y_{D_{3}} = x, \qquad {}^{3} z_{D_{3}} = y, \end{aligned}$$
(98)

\({}^{i} x_{A_{i}}\), \({}^{i} y_{A_{i}}\), and \({}^{i} z_{A_{i}}\) are the point \(A_{i}\) coordinates (also regrouped in the vector \(\mathbf{x}_{A_{i}}\)) expressed in the frame of the leg \(i\), \(\mathbf{x}_{D_{i}P}=\overrightarrow{D_{i}P}\) (\(P\) is the platform center), and \(r_{1i}\) is defined in the Table 5.

From the last line of (94) we directly get:

$$ \begin{aligned} x &= q_{12} - a, \\ y &= q_{13} + a, \\ z &= q_{11}. \end{aligned} $$
(99)

From (94), by deleting the terms in \(\cos (q_{2i}+q_{3i})\) or \(\sin(q_{2i}+q_{3i})\), it is possible to obtain (for \(i=1,\ldots, 3\)):

$$ d_{4i}^{2} = (x_{B_{i}D_{i}} - d_{3i}\cos q_{2i} )^{2} + (y_{B_{i}D_{i}} - d_{3i}\sin q_{2i} )^{2}, $$
(100)

where \(x_{A_{i}D_{i}} = {}^{i} x_{D_{i}}-{}^{i} x_{A_{i}} \) and \(y_{A_{i}D_{i}} = {}^{i} y_{D_{i}}-{}^{i} y_{A_{i}} \).

Then, expanding (100), we have

$$ 0 = a_{i}\cos q_{2i} +b_{i} \sin q_{2i} + c_{i}, $$
(101)

where

$$ \begin{aligned} a_{i}&= -2 d_{3i} x_{A_{i}D_{i}}, \\ b_{i}&=- 2 d_{3i} y_{A_{i}D_{i}}, \\ c_{i}&=x_{A_{i}D_{i}}^{2} + y_{A_{i}D_{i}}^{2} + d_{3i}^{2} - d_{4i}^{2}. \end{aligned} $$
(102)

Finally, by using the tangent half-angle formula, we can obtain

$$ q_{2i} = 2 \tan^{-1} \biggl(\frac{-b_{i} \pm\sqrt {b_{i}^{2}-c_{i}^{2}+a_{i}^{2}}}{c_{i}-a_{i}} \biggr). $$
(103)

In (103), the sign “±” denotes the two robot leg working modes.

Then, it comes easily from (94) and (95) that

$$ q_{3i}=\tan^{-1} \biggl(\frac{{}^{i} y_{D_{i}}-{}^{i} y_{C_{i}}}{{}^{i} x_{D_{i}}-{}^{i} x_{C_{i}}} \biggr) $$
(104)

with \({}^{i} x_{C_{i}}={}^{i} x_{A_{i}} + d_{2i}\cos q_{2i}\), \({}^{i} y_{C_{i}}={}^{i} y_{A_{i}} + d_{2i}\sin q_{2i}\), and

$$ q_{4i} = -q_{2i}-q_{3i}. $$
(105)

Now, differentiating (99) with respect to time and simplifying, we can find the matrices \(\mathbf{A}_{p}\) and \(\mathbf{B}_{p}\) of (15):

$$ \mathbf{A}_{p}=\mathbf{I}_{3},\qquad \mathbf{B}_{p}= \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 1 & 0 & 0 \end{array}\displaystyle \right] , $$
(106)

where \(\mathbf{I}_{3}\) is the identity matrix of dimension 3, leading thus to

$$ \mathbf{A}_{p} \begin{bmatrix} \dot{x} \\ \dot{y}\\ \dot{z} \end{bmatrix} + \mathbf{B}_{p} \begin{bmatrix} \dot{q}_{11} \\ \dot{q}_{12}\\ \dot{q}_{13} \end{bmatrix} = \begin{bmatrix} \dot{x} \\ \dot{y}\\ \dot{z} \end{bmatrix} - \begin{bmatrix} \dot{q}_{11} \\ \dot{q}_{12}\\ \dot{q}_{13} \end{bmatrix} = \mathbf{0}. $$
(107)

Now, differentiating (94) and (95) with respect to time, we can find that:

$$\begin{aligned} 0 =& {}^{i} \dot{x}_{D_{i}} + d_{2i}\sin q_{2i} \dot{q}_{2i} + d_{3i}\sin (q_{2i}+q_{3i}) (\dot{q}_{2i}+\dot{q}_{3i}), \\ 0 =& {}^{i} \dot{y}_{D_{i}} - d_{2i}\cos q_{2i} \dot{q}_{2i} - d_{3i}\cos (q_{2i}+q_{3i}) (\dot{q}_{2i}+\dot{q}_{3i}), \end{aligned}$$
(108)
$$\begin{aligned} 0 =& {}^{i} \dot{z}_{D_{i}} - \dot{q}_{1i}, \\ 0 =& \dot{q}_{2i}+\dot{q}_{3i}+\dot{q}_{4i} \end{aligned}$$
(109)

for \(i=1, 2,3\), where \({}^{i} \dot{x}_{D_{i}}\), \({}^{i} \dot{y}_{D_{i}}\), and \({}^{i} \dot{z}_{D_{i}}\) are the point \(D_{i}\) velocities along the axes of the frame of the leg \(i\),

$$\begin{aligned} &{}^{1} \dot{x}_{D_{1}} = \dot{x} , \qquad {}^{1} \dot{y}_{D_{1}} = \dot{y} , \qquad {}^{1} \dot{z}_{D_{1}} = \dot{z}, \end{aligned}$$
(110)
$$\begin{aligned} &{}^{2} \dot{x}_{D_{2}} = \dot{y} , \qquad {}^{2} \dot{y}_{D_{2}} = \dot{z} , \qquad {}^{2} \dot{z}_{D_{2}} = \dot{x}, \end{aligned}$$
(111)
$$\begin{aligned} &{}^{3} \dot{x}_{D_{3}} = \dot{z} , \qquad {}^{3} \dot{y}_{D_{3}} = \dot{x} , \qquad {}^{3} \dot{z}_{D_{3}} = \dot{y}. \end{aligned}$$
(112)

Combining (109), (109), and (112) and noticing that the last line of (109) can be disregarded as the velocities of the passive joints are not included in this equation, we get

$$\begin{aligned} \mathbf{J}_{tk_{i}} \begin{bmatrix} \dot{x} \\ \dot{y} \\ \dot{z} \end{bmatrix} =& \begin{bmatrix} 0 \\ 0 \\ 0 \end{bmatrix} \dot{q}_{1i} + \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} d_{2i}\sin q_{2i} + d_{3i}\sin(q_{2i}+q_{3i}) & d_{3i}\sin(q_{2i}+q_{3i}) & 0 \\ - d_{2i}\cos q_{2i} - d_{3i}\cos(q_{2i}+q_{3i}) & - d_{3i}\cos(q_{2i}+q_{3i}) & 0 \\ 1 & 1 & 1 \end{array}\displaystyle \right] \\ &{}\times \begin{bmatrix} \dot{q}_{2i} \\ \dot{q}_{3i} \\ \dot{q}_{4i} \end{bmatrix} , \end{aligned}$$
(113)

which can be rewritten as

$$ \mathbf{J}_{tk_{i}}\mathbf{v} - \mathbf{J}_{k_{ai}}\dot{q}_{1i} - \mathbf {J}_{k_{di}}\dot{\mathbf{q}}_{di} = \mathbf{0} $$
(114)

with

$$\begin{aligned} \mathbf{J}_{tk_{1}} =& \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{array}\displaystyle \right] ,\quad \quad \mathbf{J}_{tk_{2}}= \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 0 & 0 & 0 \end{array}\displaystyle \right] ,\quad \quad \mathbf{J}_{tk_{3}}= \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} 0 & 0 & 1 \\ 1 & 0 & 0 \\ 0 & 0 & 0 \end{array}\displaystyle \right] , \end{aligned}$$
(115)
$$\begin{aligned} \mathbf{J}_{k_{ai}} =& \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} 0 & 0 & 0 \end{array}\displaystyle \right] ^{T}, \end{aligned}$$
(116)
$$\begin{aligned} \mathbf{J}_{k_{di}} =& \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} d_{2i}\sin q_{2i} + d_{3i}\sin(q_{2i}+q_{3i}) & d_{3i}\sin(q_{2i}+q_{3i}) & 0 \\ - d_{2i}\cos q_{2i} - d_{3i}\cos(q_{2i}+q_{3i}) & - d_{3i}\cos(q_{2i}+q_{3i}) & 0 \\ 1 & 1 & 1 \end{array}\displaystyle \right] , \end{aligned}$$
(117)

and \(\mathbf{v}^{T} = [\dot{x} \,\, \dot{y}\,\, \dot{z}]\) and \(\dot{\mathbf {q}}_{di}^{T} = [\dot{q}_{2i} \,\, \dot{q}_{3i} \,\, \dot{q}_{4i}]\).

Now, considering the legs 1 to 3, we obtain

$$ \mathbf{J}_{tk}\mathbf{v} - \mathbf{J}_{k_{a}}\dot{ \mathbf{q}}_{a} - \mathbf{J}_{k_{d}}\dot{\mathbf{q}}_{d} = \mathbf{0} $$
(118)

with

$$\begin{aligned} \mathbf{J}_{tk} =& \begin{bmatrix} \mathbf{J}_{tk_{1}} \\ \mathbf{J}_{tk_{2}} \\ \mathbf{J}_{tk_{3}} \end{bmatrix} , \end{aligned}$$
(119)
$$\begin{aligned} \mathbf{J}_{k_{a}} =& \mathbf{0}_{9\times3} \end{aligned}$$
(120)

with \(\mathbf{0}_{9\times3}\) a \((9\times3)\) zero matrix, and

$$ \mathbf{J}_{k_{d}}= \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} \mathbf{J}_{k_{d1}} & \mathbf{0}_{3\times3} & \mathbf{0}_{3\times3} \\ \mathbf{0}_{3\times3} & \mathbf{J}_{k_{d2}} & \mathbf{0}_{3\times3} \\ \mathbf{0}_{3\times3} & \mathbf{0}_{3\times 3} & \mathbf{J}_{k_{d3}} \end{array}\displaystyle \right] $$
(121)

with \(\mathbf{0}_{3\times3}\) a \((3\times3)\) zero matrix and \(\dot {\mathbf{q}}_{d}^{T} = [\dot{\mathbf{q}}_{d1}^{T} \,\, \dot{\mathbf {q}}_{d2}^{T} \,\, \dot{\mathbf{q}}_{d3}^{T}]\).

From (106) and (121) it is possible to observe that

  • the matrix \(\mathbf{J}_{k_{d}}\) is singular if one block matrix \(\mathbf{J}_{k_{di}}\) is singular; \(\mathbf{J}_{k_{di}}\) is singular if and only if \(q_{3i}=0\) or \(\pi\) (i.e., \(\mathbf{x}_{2i}\) is collinear to \(\mathbf{x}_{3i}\)),

  • the matrix \(\mathbf{A}_{p}\) is constant and never singular; as a result, the robot does not encounter type 2 singularities.

All velocities and accelerations quantities can be then computed from (107) and (118) by using relations (12) and (25) given in Sect. 2.3.

Appendix D: Dynamics of the Tripteron

As mentioned in Appendix C, the Tripteron encounters only LPJTS singularities. Thus, let us now compute the criterion (48).

The inverse dynamic model of the open-loop virtual structure of the Tripteron can be obtained by noticing that each leg is composed

  • of a first active prismatic joint,

  • followed by a planar 3R robot in which the last body is massless.

The inverse dynamic model of the leg \(i\) is:

$$\begin{aligned} \tau_{t_{1i}} =& (m_{1i}+m_{2i}+m_{3i} + ia_{1i})\ddot{q}_{1i}+fs_{1i} \,\mathrm{sign}(\dot{q}_{1i}) + fv_{1i} \dot{q}_{1i} + \tau_{g_{1i}}, \\ \tau_{t_{2i}} =& \bigl(zz_{2i} + d_{3i}^{2} m_{3i} \bigr)\ddot {q}_{2i}+zz_{3i}(\ddot{q}_{2i}+\ddot{q}_{3i}) \\ &{}+d_{3i}mx_{3i} \bigl((2\ddot{q}_{2i}+ \ddot{q}_{3i})\cos q_{3i}-\dot{q}_{3i}(2\dot {q}_{2i}+\dot{q}_{3i})\sin q_{3i} \bigr) \\ &{}+d_{3i}my_{3i} \bigl((2\ddot {q}_{2i}+ \ddot{q}_{3i})\sin q_{3i}+\dot{q}_{3i}(2 \dot{q}_{2i}+\dot {q}_{3i})\cos q_{3i} \bigr) \\ &{}+fs_{2i} \,\mathrm{sign}(\dot{q}_{2i}) + fv_{2i} \dot{q}_{2i} + \tau_{g_{2i}}, \\ \tau_{t_{3i}} =& zz_{3i}(\ddot{q}_{2i}+ \ddot{q}_{3i}) +d_{3i}mx_{3i} \bigl( \ddot{q}_{2i}\cos q_{3i}+\dot{q}_{2i}^{2} \sin q_{3i} \bigr) \\ &{}+d_{3i}my_{3i} \bigl(\ddot{q}_{2i}\sin q_{3i}-\dot {q}_{2i}^{2}\cos q_{3i} \bigr) \\ &{}+ fs_{3i} \,\mathrm{sign}(\dot{q}_{3i}) + fv_{3i} \dot{q}_{3i} + \tau_{g_{3i}}, \\ \tau_{t_{4i}} =& fs_{4i} \,\mathrm{sign}(\dot{q}_{4i}) + fv_{4i} \dot{q}_{4i}, \end{aligned}$$
(122)

where

$$\begin{aligned} &\tau_{g_{11}} = g\,(m_{11}+m_{21}+m_{31}), \quad \quad \tau_{g_{12}} = \tau _{g_{13}} = 0, \end{aligned}$$
(123)
$$\begin{aligned} &\tau_{g_{21}} = 0, \quad \quad \tau_{g_{2i}} = g \,(mx_{2i}+m_{3i}d_{3i})\cos q_{2i} - g\,my_{2i} \sin q_{2i} + \tau_{g_{3i}} \quad \mbox{for }i=2,3, \end{aligned}$$
(124)
$$\begin{aligned} &\tau_{g_{31}} = 0, \quad \quad \tau_{g_{3i}} = g\,mx_{3i}\cos (q_{2i}+q_{3i}) - g\,my_{3i}\sin(q_{2i}+q_{3i}) \quad \mbox{for }i=2,3, \end{aligned}$$
(125)

and

  • the parameters \(zz_{ji}\), \(ia_{ji}\), \(m_{ji}\), \(mx_{ji}\), \(my_{ji}\), \(fs_{ji}\), \(fv_{ji}\) are defined in Sect. 2.2 (\(j=1\ldots4\)),

  • the parameters \(q_{ji}\) and length \(d_{3i}\) are defined in Tables 5, 6 and Figs. 6(b) and 17 (\(j=1\ldots4\)),

  • \(\tau_{t_{1i}}\) is the torque of the virtual actuator located in the prismatic pair, \(\tau_{t_{2i}}\) is the torque of the virtual actuator located at point \(B_{i}\), \(\tau_{t_{3i}}\) is the torque of the virtual actuator located at point \(C_{i}\), and \(\tau_{t_{4i}}\) is the torque of the virtual actuator located at point \(D_{i}\). The vector \(\boldsymbol{\tau}_{t_{a}}\) of (3) stacks all vectors \(\boldsymbol{\tau}_{t_{a}}= [\tau_{t_{11}}\ \ \tau_{t_{12}}\ \ \tau _{t_{13}} ]^{T}\), whereas the vector \(\boldsymbol{\tau}_{t_{d}}\) of (4) stacks all vectors \(\boldsymbol{\tau}_{t_{d}}= [\tau_{t_{d1}}\ \ \tau_{t_{d2}}\ \ \tau_{t_{d3}} ]^{T}\) with \(\tau _{t_{di}}= [\tau_{t_{2i}}\ \ \tau_{t_{3i}}\ \ \tau_{t_{4i}} ]^{T}\).

The inverse dynamic model of the free body corresponding to the end-effector (body 5) in the virtual system is

$$ \begin{aligned} \tau_{p_{1}} &= m_{5}\ddot{x}, \\ \tau_{p_{2}} &= m_{5}\ddot{y}, \\ \tau_{p_{3}} &= m_{5}(\ddot{z} +g), \end{aligned} $$
(126)

with \(\tau_{p_{j}}\) being the \(j\)th components of the vector \(\boldsymbol {\tau}_{pr}\) of (9); \(m_{5}\) is the end-effector mass.

Combining these expressions with those of Appendix C into the equations of Sect. 2.3, we can straightforwardly compute the inverse dynamic model of the Tripteron.

Then, for analyzing the degeneracy conditions of expression (44), let us rewrite the vector \(\boldsymbol{\tau}_{t_{d}}\) under the form

$$ \boldsymbol{\tau}_{t_{d}}=\mathbf{M}_{d}(\mathbf{q_{t}}) \ddot{\mathbf {q}}_{t}+\mathbf{c}_{d}(\mathbf{q}_{t}, \dot{\mathbf{q}}_{t}), $$
(127)

where

$$ \mathbf{M}_{d} = \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c@{\quad}c} \mathbf{0}_{3\times3} & \mathbf{M}_{d1} & \mathbf{0}_{3\times3} & \mathbf{0}_{3\times3} \\ \mathbf{0}_{3\times3} & \mathbf{0}_{3\times3} & \mathbf{M}_{d2} & \mathbf{0}_{3\times3} \\ \mathbf{0}_{3\times3} & \mathbf{0}_{3\times3} & \mathbf{0}_{3\times 3} & \mathbf{M}_{d3} \end{array}\displaystyle \right] $$
(128)

and

$$ \mathbf{c}_{d} = \begin{bmatrix} \mathbf{c}_{d1} \\ \mathbf{c}_{d2} \\ \mathbf{c}_{d3} \end{bmatrix} , $$
(129)

in which

$$ \mathbf{M}_{di} = \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} m_{di}^{11} & m_{di}^{12} & 0 \\ m_{di}^{12} & zz_{3i} & 0 \\ 0 & 0 & 0 \end{array}\displaystyle \right] $$
(130)

with \(m_{di}^{11}=zz_{2i} + d_{3i}^{2} m_{3i} +zz_{3i}+2d_{3i}(mx_{3i}\cos q_{3i} +my_{3i}\sin q_{3i})\), \(m_{di}^{12}=zz_{3i}+d_{3i}(mx_{3i}\times\cos q_{3i}+my_{3i}\sin q_{3i})\), and

$$\begin{aligned} \mathbf{c}_{di} =& \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} 0 & c_{di}^{12} & 2c_{di}^{12} \\ d_{3i}mx_{3i}-d_{3i}my_{3i}\cos q_{3i}\sin q_{3i} & 0 & 0 \\ 0 & 0 & 0 \end{array}\displaystyle \right] \left[ \textstyle\begin{array}{c} \dot{q}_{2i}^{2} \\ \dot{q}_{3i}^{2} \\ \dot{q}_{3i}\dot{q}_{2i} \end{array}\displaystyle \right] \\ &{}+ \left[ \textstyle\begin{array}{c@{\quad}c@{\quad}c} fv_{2i} & 0 & 0 \\ 0 & fv_{3i} & 0 \\ 0 & 0 & fv_{4i} \end{array}\displaystyle \right] \begin{bmatrix} \dot{q}_{2i} \\ \dot{q}_{3i} \\ \dot{q}_{4i} \end{bmatrix} + \begin{bmatrix} fs_{2i} \,\mathrm{sign}(\dot{q}_{2i}) \\ fs_{3i} \,\mathrm{sign}(\dot{q}_{3i}) \\ fs_{4i} \,\mathrm{sign}(\dot{q}_{4i}) \end{bmatrix} , \\ =& \mathbf{C}_{di}^{r} \begin{bmatrix} \dot{q}_{2i}^{2} \\ \dot{q}_{3i}^{2} \\ \dot{q}_{3i}\dot{q}_{2i} \end{bmatrix} + \mathbf{F}_{v_{di}} \dot{\mathbf{q}}_{di} + \mathbf{F}_{s_{di}}, \end{aligned}$$
(131)

with \(c_{di}^{12}=-d_{3i}(mx_{3i}\sin q_{3i}+my_{3i}\cos q_{3i})\).

Introducing (14), (20), (22), and (25) into (127), simplifying and skipping all mathematical derivations, we get

$$ \boldsymbol{\tau}_{t_{d}}=\mathbf{M}_{d}^{x}( \mathbf{x},\mathbf{q}_{t}) \dot {\mathbf{v}} + \mathbf{c}_{d}^{x}( \mathbf{x},\mathbf{q}_{t},\mathbf{v}), $$
(132)

where

$$ \mathbf{M}_{d}^{x}=\mathbf{M}_{d} \begin{bmatrix} \mathbf{J}_{p}^{-1} \\ \mathbf{J}_{q_{d}} \end{bmatrix} $$
(133)

and

$$ \mathbf{c}_{d}^{x}=\mathbf{M}_{d} \begin{bmatrix} \mathbf{J}_{p}^{d} \\ \mathbf{J}_{q_{d}}^{d} \end{bmatrix} \mathbf{v} + \begin{bmatrix} \mathbf{c}_{d1}^{x} \\ \mathbf{c}_{d2}^{x} \\ \mathbf {c}_{d3}^{x} \end{bmatrix} $$
(134)

with

$$ \mathbf{c}_{di}^{x}=\mathbf{C}_{di}^{r} \begin{bmatrix} (\mathbf{j}_{q_{di}}^{1}\mathbf{v})^{2} \\ (\mathbf{j}_{q_{di}}^{2}\mathbf{v})^{2} \\ (\mathbf{j}_{q_{di}}^{1}\mathbf{v})(\mathbf{j}_{q_{di}}^{2}\mathbf{v}) \end{bmatrix} + \mathbf{F}_{v_{di}} \mathbf{J}_{q_{di}} \mathbf{v} + \mathbf{F}_{s_{di}}, $$
(135)

in which:

  • \(\mathbf{J}_{q_{d}}\), \(\mathbf{J}_{p}^{d}\), and \(\mathbf{J}_{q_{d}}^{d}\) are three matrices defined at (20), (22), and (25).

  • \(\mathbf{j}_{q_{di}}^{j}\) is the line of the matrix \(\mathbf {J}_{q_{d}}\) corresponding to the variable \(q_{d_{ij}}\).

Thus, for one given robot configuration, \(\boldsymbol{\tau}_{t_{d}}\) is a function of \(\dot{\mathbf{v}}\) and \(\mathbf{v}\) only.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Briot, S., Pagis, G., Bouton, N. et al. Degeneracy conditions of the dynamic model of parallel robots. Multibody Syst Dyn 37, 371–412 (2016). https://doi.org/10.1007/s11044-015-9480-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11044-015-9480-9

Keywords

Navigation