Skip to main content
Log in

Implementing the homotopy continuation method in a hybrid approach to solve the kinematics problem of spatial parallel robots

  • Original Research Paper
  • Published:
Intelligent Service Robotics Aims and scope Submit manuscript

Abstract

In this paper, first the application of homotopy continuation method (HCM) in numerically solving kinematics problem of spatial parallel manipulators is investigated. Using the HCM the forward kinematics problem (F-Kin) of a six degrees of freedom (DOFs) 6–3 Stewart platform and the inverse kinematics problem (I-Kin) of a 3-DOF 3-PSP robot are solved. The governing equations of the kinematics problems of the robots are developed and embedded in the homotopy continuation function. The HCM is utilized in order to solve the nonlinear system of equations derived from the kinematics analysis of the robots. Then, to represent the real case application an initial guess far from the correct answer is selected. It is shown that, comparing with the Newton–Raphson method (NRM), the F-Kin calculation time for the Stewart robot is decreased by 43%. Therefore, using the HCM a hybrid method is suggested to solve the F-Kin of the Stewart robot. Furthermore, the HCM, as an innovative method, relieves other downsides of the conventional numerical methods, including a proper initial guess requirement as well as the problems of convergence.

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

Similar content being viewed by others

References

  1. Rezaei A, Akbarzadeh A, Akbarzadeh-T M-R (2012) An investigation on stiffness of a 3-PSP spatial parallel mechanism with flexible moving platform using invariant form. Mech Mach Theory 51:195–216

    Article  Google Scholar 

  2. Stewart D (1965) A platform with six degrees of freedom. Proc Inst Mech Eng 180(1):371–386

    Article  Google Scholar 

  3. Nanua P, Waldron KJ, Murthy V (1990) Direct kinematic solution of a Stewart platform. IEEE Trans Robot Autom 6(4):438–444

    Article  Google Scholar 

  4. Zhang C, Song S (1992) Forward kinematics of a class of parallel (Stewart) platforms with closed-form solutions. J Robot Syst 9(1):93–112

    Article  MATH  Google Scholar 

  5. Liu K, Fitzgerald JM, Lewis FL (1993) Kinematic analysis of a Stewart platform manipulator. IEEE Trans Ind Electron 40(2):282–293

    Article  Google Scholar 

  6. Raghavan M (1993) The Stewart platform of general geometry has 40 configurations. J Mech Des 115(2):277–282

    Article  Google Scholar 

  7. Wampler CW (1996) Forward displacement analysis of general six-in-parallel SPS (Stewart) platform manipulators using soma coordinates. Mech Mach Theory 31(3):331–337

    Article  Google Scholar 

  8. Husty ML (1996) An algorithm for solving the direct kinematics of general Stewart-Gough platforms. Mech Mach Theory 31(4):365–379

    Article  Google Scholar 

  9. Yee CS, Lim K-B (1997) Forward kinematics solution of Stewart platform using neural networks. Neurocomputing 16(4):333–349

    Article  Google Scholar 

  10. Dhingra AK, Almadi AN, Kohli D (2000) A Grobner–Sylvester hybrid method for closed-form displacement analysis of mechanisms. J Mech Des 122(4):431–438

    Article  Google Scholar 

  11. Ji P, Wu H (2001) A closed-form forward kinematics solution for the 6–6 Stewart platform. IEEE Trans Robot Autom 17(4):522–526

    Article  Google Scholar 

  12. Innocenti C (2001) Forward kinematics in polynomial form of the general Stewart platform. J Mech Des 123(2):254–260

    Article  Google Scholar 

  13. Lee T-Y, Shim J-K (2001) Forward kinematics of the general 6–6 Stewart platform using algebraic elimination. Mech Mach Theory 36(9):1073–1085

    Article  MATH  Google Scholar 

  14. Gao X-S, Lei D, Liao Q, Zhang G-F (2005) Generalized Stewart-Gough platforms and their direct kinematics. IEEE Trans Robot 21(2):141–151

    Article  Google Scholar 

  15. Wang Y (2007) A direct numerical solution to forward kinematics of general Stewart-Gough platforms. Robotica 25(1):121–128

    Article  Google Scholar 

  16. Omran A, Bayoumi M, Kassem A, El-Bayoumi G (2009) Optimal forward kinematics modeling of Stewart manipulator using genetic algorithms. Jordan J Mech Ind Eng 3(4):280–293

    Google Scholar 

  17. Huang X, Liao Q, Wei S (2010) Closed-form forward kinematics for a symmetrical 6–6 Stewart platform using algebraic elimination. Mech Mach Theory 45(2):327–334

    Article  MATH  Google Scholar 

  18. Zhang YH, Guan LW, Wang LP, Hua YZ (2013) Research on the forward kinematics of Stewart platform using memetic algorithms. Appl Mech Mater 268:1416–1421

    Google Scholar 

  19. Zhou W, Chen W, Liu H, Li X (2015) A new forward kinematic algorithm for a general Stewart platform. Mech Mach Theory 87:177–190

    Article  Google Scholar 

  20. Kardan I, Akbarzadeh A (2015) An improved hybrid method for forward kinematics analysis of parallel robots. Adv Robot 29(6):401–411

    Article  Google Scholar 

  21. Rezaei A, Akbarzadeh A, Nia PM, Akbarzadeh MRT (2013) Position, Jacobian and workspace analysis of a 3-PSP spatial parallel manipulator. Robot Comput Integr Manuf 29(4):158–173

    Article  Google Scholar 

  22. Rezaei A, Akbarzadeh A (2015) Study on Jacobian, singularity and kinematics sensitivity of the FUM 3-PSP parallel manipulator. Mech Mach Theory 86:211–234

    Article  Google Scholar 

  23. Toutounian F, Saberi-Nadjafi J, Taheri SH (2009) A hybrid of the Newton-GMRES and electromagnetic meta-heurestic methods for solving systems of nonlinear equations. J Math Model Algorithms 8(4):425–443

    Article  MathSciNet  MATH  Google Scholar 

  24. Bonev IA (2002) Geometric analysis of parallel mechanims. PhD thesis, Laval University

  25. Gregorio RD, Parenti-Castelli V (2001) Position analysis in analytical form of the 3-PSP mechanism. J Mech Des 123(1):51–57

    Article  Google Scholar 

  26. Bin D, Xiang-de Z (2001) Continuation method applied in kinematics of parallel robot. Appl Math Mech 22(12):1422–1428

    Article  MATH  Google Scholar 

  27. Abbasnejad G, Zarkandi S, Imani M (2010) Forward kinematics analysis of a 3-PRS parallel manipulator. World Acad Sci Eng Technol 37:329–335

    Google Scholar 

  28. Varedi S, Daniali H, Ganji D (2009) Kinematics of an offset 3-UPU translational parallel manipulator by the homotopy continuation method. Nonlinear Anal Real World Appl 10(3):1767–1774

    Article  MathSciNet  MATH  Google Scholar 

  29. Wu T-M (2006) The inverse kinematics problem of spatial 4P3R robot manipulator by the homotopy continuation method with an adjustable auxiliary homotopy function. Nonlinear Anal 64(10):2373–2380

    Article  MathSciNet  MATH  Google Scholar 

  30. Wu T-M (2006) Solving the nonlinear equations by the Newton-homotopy continuation method with adjustable auxiliary homotopy function. Appl Math Comput 173(1):383–388

    MathSciNet  MATH  Google Scholar 

  31. Wu T-M (2005) A study of convergence on the Newton-homotopy continuation method. Appl Math Comput 168(2):1169–1174

    MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alireza Akbarzadeh.

Appendix

Appendix

Extracting Eq. (34) and substituting rotation matrix components, constraint equations, which are nine nonlinear algebraic equations, can be obtained as follows,

$$\begin{aligned} {\varvec{\psi }} \left( \mathbf{q } \right) =\mathbf 0 \end{aligned}$$
(39)

where

$$\begin{aligned} \psi _{1}= & {} {x}_{\mathrm{P}}+{b}_{1}\left( \cos (\varphi )\cos \left( {\lambda } \right) \right) -{h}\left( \sin (\theta )\sin (\lambda )\right. \nonumber \\&\left. +\,\sin (\varphi )\cos (\theta )\cos (\lambda ) \right) -{a}=0\nonumber \\ \psi _{2}= & {} {y}_{\mathrm{P}}+{b}_{1}\left( \cos (\varphi )\sin (\lambda ) \right) -{h}\left( -\sin (\theta )\cos (\lambda )\right. \nonumber \\&\left. +\,\sin (\varphi )\cos (\theta )\sin (\lambda ) \right) =0\nonumber \\ \psi _{3}= & {} {z}_{\mathrm{P}}+{b}_{1}\left( -\sin (\varphi ) \right) -{h}\left( \cos (\varphi )\cos (\theta ) \right) -{q}_{1}=0\nonumber \\ \psi _{{4}}= & {} {x}_{\mathrm{P}}-\frac{1}{2}\,\,{b}_{2}\left( \cos (\varphi )\cos \left( {\lambda } \right) \right) +\frac{\sqrt{3} }{2}\,\,{b}_{2}\left( -\cos \left( {\theta } \right) \sin \left( {\lambda } \right) \right. \nonumber \\&\left. +\,\sin (\varphi )\sin (\theta )\cos (\lambda ) \right) -{h}\left( \sin (\theta )\sin (\lambda )\right. \nonumber \\&+\,\left. \sin (\varphi )\cos (\theta )\cos (\lambda ) \right) +\frac{1}{2}\,\,{a}=0\nonumber \\ \psi _{5}= & {} {y}_{\mathrm{P}}-\frac{1}{2}\,\,{b}_{2}\left( \cos (\varphi )\sin (\lambda ) \right) +\frac{\sqrt{3} }{2}\,\,{b}_{2}\left( \cos (\theta )\cos (\lambda )\right. \nonumber \\&\left. +\,\sin (\varphi )\sin (\theta )\sin (\lambda ) \right) -{h}\left( -\sin (\theta )\cos (\lambda )\right. \nonumber \\&+\,\left. \sin (\varphi )\cos (\theta )\sin (\lambda ) \right) -\frac{\sqrt{3} }{2}\,\,{a}=0\nonumber \\ \psi _{6}= & {} {z}_{\mathrm{P}}-\frac{1}{2}\,\,{b}_{2}\left( -\sin (\varphi ) \right) +\frac{\sqrt{3} }{2}\,\,{b}_{2}\left( \cos (\varphi )\sin (\theta ) \right) \nonumber \\&\quad -\,{h}\left( \cos (\varphi )\cos (\theta ) \right) -{q}_{2}=0\nonumber \\ \psi _{\mathrm{7}}= & {} {x}_{\mathrm{P}}-\frac{1}{2}\,\,{b}_{3}\left( \cos \left( {\varphi } \right) \cos \left( {\lambda } \right) \right) -\frac{\sqrt{3} }{2}\,\,{b}_{3}\left( -\cos \left( {\theta } \right) \sin \left( {\lambda } \right) \right. \nonumber \\&\left. +\,\sin \left( {\varphi } \right) \sin \left( {\theta } \right) \cos \left( {\lambda } \right) \right) -{h}\left( \sin (\theta )\sin (\lambda )\right. \nonumber \\&\left. +\,\sin (\varphi )\cos (\theta )\cos (\lambda ) \right) +\frac{1}{2}\,\,{a}=0\nonumber \\ \psi _{{8}}= & {} {y}_{\mathrm{P}}-\frac{1}{2}\,\,{b}_{3}\left( \cos (\varphi )\sin (\lambda ) \right) -\frac{\sqrt{3} }{2}\,\,{b}_{3}\left( \cos (\theta )\cos (\lambda )\right. \nonumber \\&\left. +\,\sin (\varphi )\sin (\theta )\sin (\lambda ) \right) -{h}\left( -\sin (\theta )\cos (\lambda )\right. \nonumber \\&\left. +\,\sin (\varphi )\cos (\theta )\sin (\lambda ) \right) +\frac{\sqrt{3} }{2}\,\,{a}=0\nonumber \\ \psi _{{9}}= & {} {z}_{\mathrm{P}}-\frac{1}{2}\,\,{b}_{3}\left( -\sin (\varphi ) \right) -\frac{\sqrt{3} }{2}\,\,{b}_{3}\left( \cos (\varphi )\sin (\theta ) \right) \nonumber \\&-\,{h}\left( \cos (\varphi )\cos (\theta ) \right) -{q}_{3}=0 \end{aligned}$$
(40)
$$\begin{aligned}&x_{3}-50ax_{3}-50hx_{1}+x_{1}^{2}x_{3}-50ax_{1}^{2}x_{3}-50hx_{1}x_{3}^{2}=0\nonumber \\&3{x}_{1}+1.732{x}_{2}+3{x}_{1}^{3}{x}_{3}^{2}+3 {x}_{1}^{3}{x}_{2}^{4}-1.732{x}_{1}^{4}{x}_{2}^{3}-1.732 {x}_{2}^{3}{x}_{3}^{2}\nonumber \\&\quad -\,3.464{x}_{1}{x}_{3}-2 {x}_{2}{x}_{3}-150{ax}_{1}^{3} +86.602{ax}_{2}^{3}+173.205{hx}_{1}^{2}\nonumber \\&\quad -\,173.205{hx}_{2}^{2}-3 {x}_{1}{x}_{3}^{2}-3{x}_{1}{x}_{2}^{4}-1.732 {x}_{2}{x}_{3}^{2}-3.464{x}_{1}^{3}{x}_{3}\nonumber \\&\quad -\,1.732{x}_{1}^{4}{x}_{2}+2{x}_{2}^{3}{x}_{3}-3 {x}_{1}^{3}+1.732{x}_{2}^{3}+450{ax}_{1}{x}_{2}^{2} \nonumber \\&\quad +433.013{ax}_{1}^{2}{x}_{2} -150{ax}_{1}{x}_{2}^{4} +173.205{ax}_{1}^{3}{x}_{3}-86.602{ax}_{1}^{4}{x}_{2}\nonumber \\&\quad -\,100{ax}_{2}^{3}{x}_{3}+200{hx}_{1}{x}_{2}^{3}-200{hx}_{1}^{3}{x}_{2} +20.785{x}_{1}{x}_{2}^{2}{x}_{3}\nonumber \\&\quad +\,20{x}_{1}^{2}{x}_{2}{x}_{3} -3.464{x}_{1}{x}_{2}^{4}{x}_{3}-2{x}_{1}^{4}{x}_{2}{x}_{3} -433.013{ax}_{1}^{2}{x}_{2}^{3}\nonumber \\&\quad +\,450{ax}_{1}^{3}{x}_{2}^{2}+150{ax}_{1}^{3}{x}_{3}^{2}-86.602{ax}_{2}^{3}{x}_{3}^{2}\nonumber \\&\quad -\,692.82{hx}_{1}^{2}{x}_{2}^{2}+173.205{hx}_{1}^{2}{x}_{3}^{2}+173.205{hx}_{1}^{2}{x}_{2}^{4}+200{hx}_{1}^{3}{x}_{2}^{3}\nonumber \\&\quad -\,173.205{hx}_{2}^{2}{x}_{3}^{2}-173.205{hx}_{1}^{4}{x}_{2}^{2}-20{x}_{1}^{2}{x}_{2}^{3}{x}_{3}+20.785 {x}_{1}^{3}{x}_{2}^{2}{x}_{3}\nonumber \\&\quad +\,3{x}_{1}{x}_{2}^{4} {x}_{3}^{2}+1.732{x}_{1}^{4}{x}_{2}{x}_{3}^{2}-3.464 {x}_{1}^{3}{x}_{2}^{4}{x}_{3} +2{x}_{1}^{4} {x}_{2}^{3}{x}_{3}\nonumber \\&\quad -\,346.41{ax}_{1}{x}_{3}-200{ax}_{2}{x}_{3}-200{hx}_{1}{x}_{2}-3 {x}_{1}^{3}{x}_{2}^{4}{x}_{3}^{2}\nonumber \\&\quad +\,1.732{x}_{1}^{4} {x}_{2}^{3}{x}_{3}^{2} +433.013{ax}_{1}^{2}{x}_{2}^{3}{x}_{3}^{2} -450{ax}_{1}^{3}{x}_{2}^{2}{x}_{3}^{2}\nonumber \\&\quad -\,692.82{hx}_{1}^{2}{x}_{2}^{2}{x}_{3}^{2}+173.205{hx}_{1}^{2}{x}_{2}^{4} {x}_{3}^{2}+200{hx}_{1}^{3}{x}_{2}^{3}{x}_{3}^{2}\nonumber \\&\quad -\,173.205{hx}_{1}^{4}{x}_{2}^{2}{x}_{3}^{2}+519.615{ax}_{1}{x}_{2}^{2}{x}_{3}+500{ax}_{1}^{2}{x}_{2}{x}_{3}\nonumber \\&\quad +\,173.205{ax}_{1}{x}_{2}^{4} {x}_{3}+100{ax}_{1}^{4}{x}_{2}{x}_{3} -200{hx}_{1}{x}_{2}{x}_{3}^{2}\nonumber \\&\quad -\,450{ax}_{1}{x}_{2}^{2}{x}_{3}^{2}-433.013{ax}_{1}^{2}{x}_{2}{x}_{3}^{2}-500{ax}_{1}^{2}{x}_{2}^{3}{x}_{3}\nonumber \\&\quad +\,519.615{ax}_{1}^{3}{x}_{2}^{2}{x}_{3} +150{ax}_{1}{x}_{2}^{4}{x}_{3}^{2}+86.602{ax}_{1}^{4} {x}_{2}{x}_{3}^{2}\nonumber \\&\quad -\,346.41{ax}_{1}^{3}{x}_{2}^{4} {x}_{3}+200{ax}_{1}^{4}{x}_{2}^{3}{x}_{3}+200{hx}_{1}{x}_{2}^{3}{x}_{3}^{2}\nonumber \\&\quad -\,200{h}{x}_{1}^{3}{x}_{2}{x}_{3}^{2}=0\nonumber \\&1.732{x}_{2}-3{x}_{1}-3{x}_{1}^{3}{x}_{3}^{2}-3{x}_{1}^{3}{x}_{2}^{4} -1.732{x}_{1}^{4}{x}_{2}^{3}-1.732{x}_{2}^{3}{x}_{3}^{2}\nonumber \\&\quad -\,3.464 {x}_{1}{x}_{3}+2{x}_{2}{x}_{3}+150{ax}_{1}^{3} +86.602{ax}_{2}^{3}+173.205{hx}_{1}^{2}\nonumber \\&\quad -\,173.205{hx}_{2}^{2}+3{x}_{1}{x}_{3}^{2}+3{x}_{1}{x}_{2}^{4}-1.732{x}_{2}{x}_{3}^{2}-3.464 {x}_{1}^{3}{x}_{3}\nonumber \\&\quad -\,1.732{x}_{1}^{4}{x}_{2}-2 {x}_{2}^{3}{x}_{3}+3{x}_{1}^{3}+1.732 {x}_{2}^{3}-450{ax}_{1}{x}_{2}^{2}\nonumber \\&\quad +\,433.013{ax}_{1}^{2}{x}_{2}+150{ax}_{1}{x}_{2}^{4} +173.205{ax}_{1}^{3}{x}_{3}-86.602{ax}_{1}^{4} {x}_{2}\nonumber \\&\quad +\,100{ax}_{2}^{3}{x}_{3}-200{hx}_{1}{x}_{2}^{3}+200{hx}_{1}^{3}{x}_{2}+20.785{x}_{1}{x}_{2}^{2}{x}_{3}\nonumber \\&\quad -\,20{x}_{1}^{2}{x}_{2}{x}_{3}-3.464 {x}_{1}{x}_{2}^{4}{x}_{3}+2{x}_{1}^{4}{x}_{2}{x}_{3}-433.013{ax}_{1}^{2}{x}_{2}^{3}\nonumber \\&\quad -\,450{ax}_{1}^{3}{x}_{2}^{2}-150{ax}_{1}^{3}{x}_{3}^{2}-86.602{ax}_{2}^{3}{x}_{3}^{2} -692.82{hx}_{1}^{2}{x}_{2}^{2}\nonumber \\&\quad +\,173.205{hx}_{1}^{2}{x}_{3}^{2}+173.205{hx}_{1}^{2}{x}_{2}^{4}-200{hx}_{1}^{3}{x}_{2}^{3}\nonumber \\&\quad -\,173.205{hx}_{2}^{2}{x}_{3}^{2}-173.205{hx}_{1}^{4}{x}_{2}^{2}+20{x}_{1}^{2}{x}_{2}^{3}{x}_{3}+20.785 {x}_{1}^{3}{x}_{2}^{2}{x}_{3}\nonumber \\&\quad -\,3{x}_{1}{x}_{2}^{4} {x}_{3}^{2}+1.732{x}_{1}^{4}{x}_{2}{x}_{3}^{2}-3.464 {x}_{1}^{3}{x}_{2}^{4}{x}_{3}-2{x}_{1}^{4}{x}_{2}^{3}{x}_{3}\nonumber \\&\quad -\,346.41{ax}_{1}{x}_{3}+200{ax}_{2}{x}_{3}+200{hx}_{1}{x}_{2}+3{x}_{1}^{3}{x}_{2}^{4} {x}_{3}^{2}\nonumber \\&\quad +\,1.732{x}_{1}^{4}{x}_{2}^{3}{x}_{3}^{2} +433.013{ax}_{1}^{2}{x}_{2}^{3}{x}_{3}^{2}+450{ax}_{1}^{3}{x}_{2}^{2}{x}_{3}^{2}\nonumber \\&\quad -\,692.82{hx}_{1}^{2}{x}_{2}^{2}{x}_{3}^{2}+173.205{hx}_{1}^{2}{x}_{2}^{4} {x}_{3}^{2}-200{hx}_{1}^{3}{x}_{2}^{3}{x}_{3}^{2}\nonumber \\&\quad -\,173.205{hx}_{1}^{4}{x}_{2}^{2}{x}_{3}^{2}+519.615{ax}_{1}{x}_{2}^{2}{x}_{3}-500{ax}_{1}^{2}{x}_{2}{x}_{3}\nonumber \\&\quad +v173.205{ax}_{1}{x}_{2}^{4} {x}_{3}-100{ax}_{1}^{4}{x}_{2}{x}_{3} +200{hx}_{1}{x}_{2}{x}_{3}^{2}+450{ax}_{1}{x}_{2}^{2}{x}_{3}^{2}\nonumber \\&\quad -\,433.013{ax}_{1}^{2}{x}_{2}{x}_{3}^{2}+500{ax}_{1}^{2}{x}_{2}^{3}{x}_{3}+519.615{ax}_{1}^{3}{x}_{2}^{2}{x}_{3}\nonumber \\&\quad -\,150{ax}_{1}{x}_{2}^{4}{x}_{3}^{2}+86.602{ax}_{1}^{4} {x}_{2}{x}_{3}^{2}-346.41{ax}_{1}^{3}{x}_{2}^{4} {x}_{3}\nonumber \\&\quad -\,200{ax}_{1}^{4}{x}_{2}^{3}{x}_{3}-200{hx}_{1}{x}_{2}^{3}{x}_{3}^{2}+200{hx}_{1}^{3}{x}_{2}{x}_{3}^{2}=0 \end{aligned}$$
(41)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mostashiri, N., Akbarzadeh, A. & Rezaei, A. Implementing the homotopy continuation method in a hybrid approach to solve the kinematics problem of spatial parallel robots. Intel Serv Robotics 10, 257–270 (2017). https://doi.org/10.1007/s11370-017-0222-0

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11370-017-0222-0

Keywords

Navigation