Skip to main content
Log in

Trajectory tracking control based on non-singular fractional derivatives for the PUMA 560 robot arm

  • Published:
Multibody System Dynamics Aims and scope Submit manuscript

Abstract

In this paper, a novel hybrid fractional-order control strategy for the PUMA-560 robot manipulator is developed and presented, which combines the derivative of Caputo–Fabrizio and the integral of Atangana–Baleanu, both in the Caputo sense. The fractional-order dynamic model of the system (FODM) is also considered which consists of two models, the robot manipulator model, and the model of the induction motors which are the actuators that drive their joints. The fractional model of the manipulator is obtained using the Euler–Lagrange formulation. On the other hand, for controlling each one of the induction motors, fractional-order controllers \({{\mathop{\mathrm{PI}}\nolimits } ^{\vartheta }}\) based on Atangana–Baleanu in the Caputo sense integral were developed. And for the trajectory tracking control, fractional-order controllers \({{\mathop{\mathrm{PD}}\nolimits } ^{\xi }}\) were developed based on the fractional derivative of Caputo–Fabrizio in the Caputo sense. Also, ordinary PI and PD controllers were developed for the PUMA robot control to compare their performance with the fractional-order controllers. The results obtained demonstrated that the fractional-order controllers have a better capability for tracking trajectory tasks than the integer-order controllers, even when changes of the desired trajectory and external disturbances are considered. Additionally, an end-effector trajectory tracking task for manufacturing applications is also considered. All numerical simulations were performed by using the same orders and gains, demonstrating that the proposed fractional-order \({{\mathop{\mathrm{PI}}\nolimits } ^{\vartheta }}\) and \({{\mathop{\mathrm{PD}}\nolimits } ^{\xi }}\) controllers are robust, under different operating conditions, for tracking trajectory tasks. The fractional-order controllers and the integer-order controllers were tuned applying the cuckoo search optimization algorithm where the root-mean-square error (RMSE) was chosen as the cost function to minimize.

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.

Institutional subscriptions

Fig. 1
Fig. 2
Algorithm 1
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

Similar content being viewed by others

References

  1. Abdon, A.: Fractional Operators with Constant and Variable Order with Application to Geo-Hydrology. Academic Press, San Diego (2017)

    MATH  Google Scholar 

  2. Abdon, A., Gómez-Aguilar, J.F.: Decolonisation of fractional calculus rules: breaking commutativity and associativity to capture more natural phenomena. Eur. Phys. J. Plus 133(4), 166 (2018)

    Google Scholar 

  3. Abdon, A., Koca, I.: Chaos in a simple nonlinear system with Atangana–Baleanu derivatives with fractional order. Chaos Solitons Fractals 89, 447–454 (2016)

    MathSciNet  MATH  Google Scholar 

  4. Abdon, A., Owolabi, K.M.: New numerical approach for fractional differential equations. Math. Model. Nat. Phenom. 13(1), 3 (2018)

    MathSciNet  MATH  Google Scholar 

  5. Abro, K.A., Memon, A.A., Uqaili, M.A.: A comparative mathematical analysis of RL and RC electrical circuits via Atangana-Baleanu and Caputo-Fabrizio fractional derivatives. Eur. Phys. J. Plus 133(3), 113 (2018)

    Google Scholar 

  6. Aghababa, M.P.: Optimal design of fractional-order pid controller for five bar linkage robot using a new particle swarm optimization algorithm. Soft Comput. 20(10), 4055–4067 (2016)

    Google Scholar 

  7. Anand, S.: Software for control and dynamic simulation of Unimate PUMA 560 robot. PhD thesis, Ohio University (1993)

  8. Angel, L., Viola, J.: Fractional order PID for tracking control of a parallel robotic manipulator type delta. ISA Trans. 79, 172–188 (2018)

    Google Scholar 

  9. Armstrong, B., Khatib, O., Burdick, J.: The explicit dynamic model and inertial parameters of the puma 560 arm. In: Proceedings. 1986 IEEE International Conference on Robotics and Automation, vol. 3, pp. 510–518. IEEE Press, New York (1986)

    Google Scholar 

  10. Baleanu, D., Fernandez, A.: On some new properties of fractional derivatives with Mittag-Leffler kernel. Commun. Nonlinear Sci. Numer. Simul. 59, 444–462 (2018)

    MathSciNet  MATH  Google Scholar 

  11. Balsara, D.S.: Von Neumann stability analysis of smoothed particle hydrodynamics—suggestions for optimal algorithms. J. Comput. Phys. 121(2), 357–372 (1995)

    MathSciNet  MATH  Google Scholar 

  12. Bendary, F., Elserafi, K., MahmoudSoliman, R.H., Trajectory tracking control for robot manipulator using fractional-order control. Organization 12(14)

  13. Blaschke, F.: The principle of field orientation applied to the new transvector closed-loop control system for rotating field machines. J. Power Electron. 2(2), 26–28 (2004)

    Google Scholar 

  14. Bona, B., Indri, M.: Friction compensation in robotics: an overview. In: Proceedings of the 44th IEEE Conference on Decision and Control, pp. 4360–4367. IEEE Press, New York (2005)

    Google Scholar 

  15. Caputo, M.: Linear models of dissipation whose q is almost frequency independent—II. Geophys. J. Int. 13(5), 529–539 (1967)

    Google Scholar 

  16. Caputo, M., Fabrizio, M.: A new definition of fractional derivative without singular kernel. Prog. Fract. Differ. Appl. 1(2), 1–13 (2015)

    Google Scholar 

  17. Coronel-Escamilla, A., Torres, F., Gómez-Aguilar, J.F., Escobar-Jiménez, R.F., Guerrero-Ramírez, G.V.: On the trajectory tracking control for an scara robot manipulator in a fractional model driven by induction motors with pso tuning. Multibody Syst. Dyn. 43(3), 257–277 (2018)

    MathSciNet  MATH  Google Scholar 

  18. Craig, J.J.: Introduction to Robotics: Mechanics and Control, 3/E. Pearson Education, Upper Saddle River (2009)

    Google Scholar 

  19. Dattu, N.A., Deepthi, G., Pundlik, G.S.: Multifunctional induction machine. In: 2016 IEEE International WIE Conference on Electrical and Computer Engineering (WIECON-ECE), pp. 53–56. IEEE Press, New York (2016). https://doi.org/10.1109/WIECON-ECE.2016.8009086

    Chapter  Google Scholar 

  20. Delavari, H., Ghaderi, R., Ranjbar N., A., HosseinNia, S.H., Momani, S.: Adaptive fractional pid controller for robot manipulator (2012). ArXiv preprint, arXiv:1206.2027

  21. Delavari, H., Lanusse, P., Sabatier, J.: Fractional order controller design for a flexible link manipulator robot. Asian J. Control 15(3), 783–795 (2013)

    MathSciNet  MATH  Google Scholar 

  22. Dumitru, B., Kai, D., Enrico, S.: Fractional Calculus: Models and Numerical Methods, vol. 3. World Scientific, Singapore (2012)

    MATH  Google Scholar 

  23. Dumlu, A., Erenturk, K.: Trajectory tracking control for a 3-dof parallel manipulator using fractional-order \({{\mathrm{{PI}}}^{\lambda }}{{\mathrm{{D}}}^{\mu }}\) control. IEEE Trans. Ind. Electron. 61(7), 3417–3426 (2014)

    Google Scholar 

  24. Egeland, O., Gravdahl, J.T.: Modeling and Simulation for Automatic Control, vol. 76. Marine Cybernetics, Trondheim (2002)

    Google Scholar 

  25. Guerrero-Ramírez, G., Tang, Y.: Motion control of rigid robots driven by current-fed induction motors. Mechatronics 11(1), 13–25 (2001)

    Google Scholar 

  26. Herzallah, M.A.E.: Notes on some fractional calculus operators and their properties. Fract. Calc. Appl. Anal. 5(19), 1–10 (2014)

    MathSciNet  Google Scholar 

  27. Jumarie, G.: Lagrangian mechanics of fractional order, Hamilton–Jacobi fractional pde and Taylor’s series of nondifferentiable functions. Chaos Solitons Fractals 32(3), 969–987 (2007)

    MathSciNet  MATH  Google Scholar 

  28. Kelly, R., Santibáñez, V.: Control de movimiento de robots manipuladores. Pearson Education, Upper Saddle River (2003)

    Google Scholar 

  29. Krause, P., Wasynczuk, O., Sudhoff, S.D., Pekarek, S.: Analysis of Electric Machinery and Drive Systems, vol. 75. Wiley, New York (2013)

    Google Scholar 

  30. Kufieta, K.: Force estimation in robotic manipulators: Modeling, simulation and experiments. Department of Engineering Cybernetics NTNU Norwegian University of Science and Technology (2014)

  31. Kumar, A., Kumar, V., Gaidhane, P.J.: Optimal design of fuzzy fractional order pi \(\lambda \) d \(\mu \) controller for redundant robot. Proc. Comput. Sci. 125, 442–448 (2018)

    Google Scholar 

  32. Leonhard, W.: Control of Electrical Drives. Springer, Berlin (2001)

    Google Scholar 

  33. Li, H., Luo, Y., Chen, Y.: A fractional order proportional and derivative (fopd) motion controller: tuning rule and experiments. IEEE Trans. Control Syst. Technol. 18(2), 516–520 (2010)

    Google Scholar 

  34. Liegeois, A., Khalil, W., Dumas, J.M., Renaud, M.: Mathematical and computer models of interconnected mechanical systems. In: Proc. of the Symposium on Theory and Practice of Robots and Manipulators (1976)

    Google Scholar 

  35. Ma, J., Ting, T.O., Man, K.L., Zhang, N., Guan, S.-U., Wong, P.W.: Parameter estimation of photovoltaic models via Cuckoo Search. J. Appl. Math. 2013, 362619 (2013)

    MathSciNet  Google Scholar 

  36. Marino, R., Peresada, S., Valigi, P.: Adaptive input-output linearizing control of induction motors. IEEE Trans. Autom. Control 38(2), 208–221 (1993)

    MathSciNet  MATH  Google Scholar 

  37. Marino, R., Tomei, P., Verrelli, C.M.: Induction Motor Control Design. Springer, London (2010)

    MATH  Google Scholar 

  38. Mohammed, R.H., Bendary, F., Elserafi, K.: Trajectory tracking control for robot manipulator using fractional order-fuzzy-pid controller. Int. J. Comput. Appl. 134(15) (2016)

  39. Mujumdar, A., Kurode, S., Tamhane, B.: Fractional order sliding mode control for single link flexible manipulator. In: Control Applications (CCA), 2013 IEEE International Conference on, pp. 288–293. IEEE Press, New York (2013)

    Google Scholar 

  40. Murray, R.M.: A Mathematical Introduction to Robotic Manipulation. CRC Press, Boca Raton (2017)

    Google Scholar 

  41. Owolabi, K.M., Atangana, A.: Analysis and application of new fractional Adams–Bashforth scheme with Caputo–Fabrizio derivative. Chaos Solitons Fractals 105, 111–119 (2017)

    MathSciNet  MATH  Google Scholar 

  42. Podlubny, I.: Fractional Differential Equations: An Introduction to Fractional Derivatives, Fractional Differential Equations, to Methods of Their Solution and Some of Their Applications, vol. 198. Elsevier, Amsterdam (1998)

    MATH  Google Scholar 

  43. Rahmani, M., Ghanbari, A., Ettefagh, M.M.: Robust adaptive control of a bio-inspired robot manipulator using bat algorithm. Expert Syst. Appl. 56, 164–176 (2016)

    Google Scholar 

  44. Sciavicco, L., Siciliano, B.: Modelling and Control of Robot Manipulators. Springer, London (2012)

    MATH  Google Scholar 

  45. Sharma, R., Rana, K.P.S., Kumar, V.: Performance analysis of fractional order fuzzy pid controllers applied to a robotic manipulator. Expert Syst. Appl. 41(9), 4274–4289 (2014)

    Google Scholar 

  46. Sharma, R., Gaur, P., Mittal, A.P.: Performance analysis of two-degree of freedom fractional order pid controllers for robotic manipulator with payload. ISA Trans. 58, 279–291 (2015)

    Google Scholar 

  47. Song, C.J.: Noether symmetry for fractional Hamiltonian system. Phys. Lett. A 383(29), 125914 (2019)

    MathSciNet  Google Scholar 

  48. Spong, M.W., Vidyasagar, M.: Robot Dynamics and Control. Wiley, New York (2008)

    Google Scholar 

  49. Toufik, M., Atangana, A.: New numerical approximation of fractional derivative with non-local and non-singular kernel: application to chaotic models. Eur. Phys. J. Plus 132(10), 444 (2017)

    Google Scholar 

  50. Valério, D., Sá da Costa, J.: Time domain implementations of non-integer order controllers. In: Proceedings of CONTROLO, Aveiro, Portugal, pp. 353–358 (2002)

    Google Scholar 

  51. Valério, D., Sá Da Costa, J.: An Introduction to Fractional Control, vol. 91 (2013). IET

    MATH  Google Scholar 

  52. Valério, D., Sá da Costa, J.: Fractional sliding mode control of mimo nonlinear noncommensurable plants. J. Vib. Control 20(7), 1052–1065 (2014)

    MathSciNet  Google Scholar 

  53. Valério, D., Sadacosta, J.: Fractional order control of a flexible robot. In: Fractional Differentiation and Its Applications, pp. 649–660 (2004)

    Google Scholar 

  54. Vinagre, B.M., Podlubny, I., Dorcak, L., Feliu, V.: On fractional pid controllers: a frequency domain approach. IFAC Proc. Vol. 33(4), 51–56 (2000)

    Google Scholar 

  55. Vuong, N.D., Marcelo Jr., A.H., Li, Y.P., Lim, S.Y.: Improved dynamic identification of robotic manipulators in the linear region of dynamic friction. IFAC Proc. Vol. 42(16), 167–172 (2009)

    Google Scholar 

  56. Woodson, W.E., Tillman, B., Tillman, P.: Human Factors Design Handbook: Information and Guidelines for the Design of Systems, Facilities, Equipment, and Products for Human Use (1992)

    Google Scholar 

  57. Yang, X.-S., Deb, S.: Cuckoo search via Lévy flights. In: Nature & Biologically Inspired Computing, 2009. NaBIC 2009. World Congress on, pp. 210–214. IEEE Press, New York (2009)

    Google Scholar 

Download references

Acknowledgements

Jorge Enrique Lavín Delgado and Jesús Emmanuel Solís Pérez acknowledges the support provided by CONACyT through the assignment post-doctoral and doctoral fellowship, respectively. José Francisco Gómez Aguilar acknowledges the support provided by CONACyT: Cátedras CONACyT para jóvenes investigadores 2014. José Francisco Gómez Aguilar and Ricardo Fabricio Escobar Jiménez acknowledges the support provided by SNI-CONACyT.

Author information

Authors and Affiliations

Authors

Contributions

All authors contributed equally and significantly in writing this article. All authors read and approved the final manuscript.

Corresponding author

Correspondence to J. F. Gómez-Aguilar.

Ethics declarations

Conflict of interest

The authors declare that there is no conflict of interest regarding the publication of this paper.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A: Elements of the dynamic model

By choosing the values for the parameters of the PUMA 560 arm proposed in [9], see Table 10, the inertial, Coriolis and centrifugal matrices and gravitational forces vector defined in (3.8), (3.9), (3.10), and (3.11), respectively, are given by

$$ \textstyle\begin{array}{l@{\quad }l@{\quad }l} m_{11}=2\text{.}57+1\text{.}38C_{2}^{2}+0\text{.}30S_{23}^{2}+0\text{.}744C_{2}S_{23} & & m_{33}=1\text{.}16 \\ m_{12}=0\text{.}690S_{2}-0\text{.}134C_{23}+0\text{.}0238C_{2} & & m_{34}=-0\text{.}00125S_{4}S_{5} \\ m_{13}=-0\text{.}134C_{23}-0\text{.}00397S_{23} & & m_{35}=0\text{.}00125C_{4}C_{5} \\ m_{14}=0 & & m_{36}=0 \\ m_{15}=0 & & m_{44}=0\text{.}20 \end{array} $$
$$ \textstyle\begin{array}{l@{\quad }l@{\quad }l} m_{16}=0 & & m_{45}=0 \\ m_{22}=6\text{.}79+0\text{.}744S_{3} & & m_{46}=0 \\ m_{23}=0\text{.}333+0\text{.}372S_{3}-0\text{.}0110C_{3} & & m_{55}=0 \text{.}18 \\ m_{24}=0 & & m_{56}=0 \\ m_{25}=0 & & m_{66}=0\text{.}19 \\ m_{26}=0 & & \end{array}$$
$$\begin{aligned} b_{112} =&-2\text{.}76S_{2}C_{2}+0\text{.}744C_{223}+0\text{.}60S_{23}C_{23}-0\text{.}0213\left ( 1-2S_{23}^{2}\right ) \\ b_{113} =&0\text{.}744C_{2}C_{23}+0\text{.}6S_{23}C_{23}+0\text{.}022C_{2}S_{23}-0\text{.}0213\left ( 1-2S_{23}^{2}\right ) \\ b_{114} =&-0\text{.}0025S_{23}C_{23}S_{4}S_{5}+0\text{.}00086C_{4}S_{5}-0\text{.}00248C_{2}C_{23}S_{4}S_{5} \\ b_{115} =&-0\text{.}0025\left ( S_{23}^{2}S_{5}-S_{23}C_{23}C_{4}C_{5} \right ) -0\text{.}00248C_{2}\left ( S_{23}S_{5}-C_{23}C_{4}C_{5} \right ) +0\text{.}00086S_{4}C_{5} \\ b_{123} =&0\text{.}267S_{23}-0\text{.}00758C_{23} \\ b_{116} =&b_{124}=b_{125}=b_{126}=b_{134}=b_{135}=b_{136}=b_{145}=b_{146}=b_{156}=0 \\ b_{212} =&b_{213}=b_{216}=0 \\ b_{214} =&0\text{.}00164S_{23}-0\text{.}0025C_{23}C_{4}S_{5}+0 \text{.}00248S_{2}C_{4}S_{5}+0\text{.}0003S_{23}\left ( 1-2S_{4}^{2}\right ) \\ b_{215} =&-0\text{.}0025C_{23}S_{4}C_{5}+0\text{.}00248S_{2}S_{4}C_{5}-0\text{.}000642C_{23}S_{4} \\ b_{223} =&0\text{.}022S_{3}+0\text{.}744C_{3} \\ b_{224} =&-0\text{.}00248C_{3}S_{4}S_{5} \\ b_{225} =&-0\text{.}0025S_{5}+0\text{.}00248\left ( C_{3}C_{4}C_{5}-S_{3}S_{5} \right ) \\ b_{234} =&-0\text{.}00248C_{3}S_{4}S_{5} \\ b_{235} =&-0\text{.}0025S_{5}+0\text{.}00248\left ( C_{3}C_{4}C_{5}-S_{3}S_{5} \right ) \\ b_{226} =&b_{236}=b_{245}=b_{246}=b_{256}=0 \\ b_{314} =&-0\text{.}0025C_{23}C_{4}S_{5}+0\text{.}00164S_{23}+0 \text{.}0003S_{23}\left ( 1-2S_{4}^{2}\right ) \\ b_{315} =&-0\text{.}0025C_{23}S_{4}C_{5}-0\text{.}000642C_{23}S_{4} \\ b_{325} =&-0\text{.}0025S_{5} \\ b_{335} =&-0\text{.}0025S_{5} \\ b_{345} =&-0\text{.}0025S_{4}C_{5} \\ b_{312} =&b_{313}=b_{316}=b_{323}=b_{324}=b_{326}=b_{334}=b_{336}=b_{346}=b_{356}=0 \\ b_{412} =&-0\text{.}00164S_{23}+0\text{.}0025C_{23}C_{4}S_{5}-0 \text{.} 00248S_{2}C_{4}S_{5}-0\text{.}0003S_{23}\left ( 1-2S_{4}^{2} \right ) \\ b_{413} =&0\text{.}0025C_{23}C_{4}S_{5}-0\text{.}00164S_{23}-0\text{.} 0003S_{23} \left ( 1-2S_{4}^{2}\right ) \\ b_{415} =&-0\text{.}00064S_{23}C_{4} \\ b_{425} =&0\text{.}000642S_{4} \\ b_{435} =&0\text{.}000642S_{4} \\ b_{414} =&b_{416}=b_{423}=b_{424}=b_{426}=b_{434}=b_{436}=b_{445}=b_{446}=b_{456}=0 \\ b_{512} =&0\text{.}0025C_{23}S_{4}C_{5}-0\text{.}00248S_{2}S_{4}C_{5}+0 \text{.}000642C_{23}S_{4} \\ b_{513} =&0\text{.}0025C_{23}S_{4}C_{5}+0\text{.}000642C_{23}S_{4} \end{aligned}$$
$$\begin{aligned} b_{514} =&0\text{.}000642S_{23}C_{4} \\ b_{523} =&0\text{.}0025S_{5} \\ b_{524} =&-0\text{.}000642S_{4} \\ b_{534} =&-0\text{.}000642S_{4} \\ b_{515} =&b_{516}=b_{525}=b_{526}=b_{535}=b_{536}=b_{545}=b_{546}=b_{556}=0 \\ b_{612} =&b_{613}=b_{614}=b_{615}=b_{616}=b_{623}=b_{624}=b_{625} \\ =&b_{626}=b_{634}=b_{635}=b_{636}=b_{645}=b_{646}=b_{656}=0 \end{aligned}$$
$$\begin{aligned} c_{12} =&0\text{.}69C_{2}+0\text{.}134S_{23}-0\text{.}0238S_{2} \\ c_{13} =&0\text{.}5\left ( 0\text{.}267S_{23}-0\text{.}00758C_{23} \right ) \\ c_{11} =&c_{14}=c_{15}=c_{16}=0 \\ c_{21} =&-0\text{.}5\left [ -2\text{.}76S_{2}C_{2}+0\text{.}744C_{223}+0\text{.}60S_{23}C_{23}-0\text{.}0213\left ( 1-2S_{23}^{2}\right ) \right ] \\ c_{23} =&0\text{.}5\left ( 0\text{.}022S_{3}+0\text{.}744C_{3}\right ) \\ c_{22} =&c_{24}=c_{25}=c_{26}=0 \\ c_{31} =&-0\text{.}5\left [ 0\text{.}744C_{2}C_{23}+0\text{.}60S_{23}C_{23}+0\text{.}022C_{2}S_{23}-0\text{.}0213\left ( 1-2S_{23}^{2} \right ) \right ] \\ c_{32} =&-0\text{.}5\left ( 0\text{.}022S_{3}+0\text{.}744C_{3}\right ) \\ c_{34} =&-0\text{.}00125C_{4}S_{5} \\ c_{35} =&-0\text{.}00125C_{4}S_{5} \\ c_{33} =&c_{36}=0 \\ c_{41} =&-0\text{.}5\left ( -0\text{.}0025S_{23}C_{23}S_{4}S_{5}+0 \text{.}00086C_{4}S_{5}-0\text{.}00248C_{2}C_{23}S_{4}S_{5}\right ) \\ c_{42} =&0\text{.}5\left ( 0\text{.}00248C_{3}S_{4}S_{5}\right ) \\ c_{43} =&c_{44}=c_{45}=c_{46}=0 \\ c_{51} =&-0\text{.}5\left [ (-0\text{.}0025\left ( S_{23}^{2}S_{5}-S_{23}C_{23}C_{4}C_{5} \right ) \right ] -0\text{.}00248C_{2}\left ( S_{23}S_{5}-C_{23}C_{4}C_{5}\right ) \\ &{}+0\text{.}00086S_{4}C_{5} \\ c_{52} =&-0\text{.}5\left [ -0\text{.}0025S_{5}+0\text{.}00248\left ( C_{3}C_{4}C_{5}-S_{3}S_{5} \right ) \right ] \\ c_{53} =&0\text{.}5\left ( 0\text{.}0025S_{5}\right ) \\ c_{54} =&c_{55}=c_{56}=0 \\ c_{61} =&c_{62}=c_{63}=c_{64}=c_{65}=c_{66}=0 \end{aligned}$$
$$\begin{aligned} g_{2} =&-37\text{.}2C_{2}-8\text{.}4S_{23}+1\text{.}02S_{2} \\ g_{3} =&-8\text{.}4S_{23}+0\text{.}25C_{23} \\ g_{4} =&0\text{.}028S_{23}S_{4}S_{5} \\ g_{5} =&-0\text{.}028\left ( C_{23}S_{5}+S_{23}C_{4}C_{5}\right ) \\ g_{1} =&g_{6}=0 \end{aligned}$$

The trigonometric functions have been abbreviated by writing \(S_{i}\) and \(C_{i}\) for \(\sin \left ( {{q_{i}}} \right )\) and \(\cos \left ( {{q_{i}}} \right )\), respectively. Similarly, when a trigonometric operation is applied to the sum of several angles we write \(S_{ij}\) for \(\sin \left ( {{q_{i}} + {q_{j}}} \right )\) and \(C_{ij}\) for \(\cos \left ( {{q_{i}} + {q_{j}}} \right )\).

Appendix B: Jacobian matrix

The Jacobian matrix for the end-effector has the form [7]

$$ {\mathbf{{J}}}_{0}^{6} = \left [ { \textstyle\begin{array}{c@{\quad }c@{\quad }c@{\quad }c} {{J_{11}}}&{{J_{12}}}& \cdots &{{J_{16}}} \\ {{J_{21}}}&{{J_{22}}}& \cdots &{{J_{26}}} \\ \vdots & \vdots & \ddots & \vdots \\ {{J_{61}}}&{{J_{62}}}& \cdots &{{J_{66}}} \end{array}\displaystyle } \right ], $$
(B.1)

where

$$ \textstyle\begin{array}{l@{\quad }l@{\quad }l} J_{11} = - {S_{1}}\left ( {{a_{3}}{C_{23}} + {d_{4}}{S_{23}} + {a_{2}}{C_{2}}} \right ) - {d_{23}}{C_{1}} & & J_{44} = {C_{1}}{S_{23}} \\ J_{12} = {C_{1}}\left ( { - {a_{3}}{S_{23}} + {d_{4}}{C_{23}} - {a_{2}}{S_{2}}} \right ) & & J_{45} = - {C_{1}}{C_{23}}{S_{4}} - {S_{1}}{C_{4}} \\ J_{13} = {C_{1}}\left ( { - {a_{3}}{S_{23}} + {d_{4}}{C_{23}}} \right ) & & J_{46} = \left ( {{C_{1}}{C_{23}}{C_{4}} - {S_{1}}{S_{4}}} \right ){S_{5}} + {C_{1}}{S_{23}}{C_{5}} \\ J_{14} = {J_{15}} = {J_{16}} = 0 & & J_{51} = 0 \\ J_{21} = {C_{1}}\left ( {{a_{3}}{C_{23}} + {d_{4}}{S_{23}} + {a_{2}}{C_{2}}} \right ) - {d_{23}}{S_{1}} & & J_{52} = {J_{53}} = {C_{1}} \\ J_{22} = {S_{1}}\left ( { - {a_{3}}{S_{23}} + {d_{4}}{C_{23}} - {a_{2}}{S_{2}}} \right ) & & J_{54} = {S_{1}}{S_{23}} \\ J_{23} = {S_{1}}\left ( { - {a_{3}}{S_{23}} + {d_{4}}{C_{23}}} \right ) & & J_{55} = - {S_{1}}{C_{23}}{S_{4}} + {C_{1}}{C_{4}} \\ J_{24} = {J_{25}} = {J_{26}} = 0 & & J_{56} = \left ( {{S_{1}}{C_{23}}{C_{4}} + {C_{1}}{S_{4}}} \right ){S_{5}} + {S_{1}}{S_{23}}{C_{5}} \\ J_{31} = {J_{34}} = {J_{35}} = {J_{36}} = 0 & & J_{61} = 1 \\ J_{32} = - \left ( {{a_{2}}{C_{23}} + {d_{4}}{S_{23}} + {a_{2}}{C_{2}}} \right ) & & J_{62} = {J_{63}} = 0 \\ J_{33} = - \left ( {{a_{3}}{C_{23}} + {d_{4}}{S_{23}}} \right ) & & J_{64} = {C_{23}} \\ J_{41} = 0 & & J_{65} = {S_{23}}{S_{4}} \\ J_{42} = {J_{43}} = - {S_{1}} & & J_{66} = - {S_{23}}{C_{4}}{S_{5}} + {C_{23}}{C_{5}} \end{array} $$

The modified Denavit–Hartenberg parameters shown in Table 7 were taken from [9] and used for numerical simulations.

Table 7 Modified Denavit–Hartenberg parameters
Table 8 Parameters of the second and third desired trajectories
Table 9 RMSE for end-effector tracking trajectory
Table 10 Mass and length of the links

Appendix C: Inverse kinematics

Formally, the inverse kinematics problem can be defined as the problem of finding the required joint variables to place the tool frame in a position and orientation desired, i.e. given

$$ {\mathbf{{T}}}_{0}^{6} = \left [ { \textstyle\begin{array}{c@{\quad }c@{\quad }c@{\quad }c} {{r_{11}}}&{{r_{12}}}&{{r_{13}}}&{{p_{x}}} \\ {{r_{21}}}&{{r_{22}}}&{{r_{23}}}&{{p_{y}}} \\ {{r_{31}}}&{{r_{32}}}&{{r_{33}}}&{{p_{z}}} \\ 0&0&0&1 \end{array}\displaystyle } \right ], $$
(C.1)

determine \({q_{1}},{q_{2}}, \ldots ,{q_{6}}\). On the other hand, when the last three axes intersect (spherical wrist), the origins of the frames 4, 5, and 6 are located at the point of intersection:

$$ \tilde{{\mathbf{{p}}}} = {\mathbf{{T}}}_{0}^{1}{\mathbf{{T}}}_{1}^{2}{\mathbf{{T}}}_{2}^{3}{{{ \tilde{\mathbf{{p}}}}}_{3}}, $$
(C.2)

where \({\tilde{{\mathbf{{p}}}}}\) and \({{\tilde{{\mathbf{{p}}}}}_{3}}\) are the homogeneous vectors of the center of the spherical wrist expressed in the frames 0 and 3 respectively. According to Denavit–Hartenberg modified convention [18], the homogeneous transformation between frame \(i\) and frame \(i-1\) can be expressed as

$$ {\mathbf{{T}}}_{i - 1}^{i} = \left [ { \textstyle\begin{array}{c@{\quad }c@{\quad }c@{\quad }c} {{C_{{\theta _{i}}}}}&{ - {S_{{\theta _{i}}}}}&0&{{a_{i - 1}}} \\ {{S_{{\theta _{i}}}}{C_{{\alpha _{i - 1}}}}}&{{C_{{\theta _{i}}}}{C_{{ \alpha _{i - 1}}}}}&{ - {S_{{\alpha _{i - 1}}}}}&{ - {S_{{\alpha _{i - 1}}}}{d_{i}}} \\ {{S_{{\theta _{i}}}}{S_{{\alpha _{i - 1}}}}}&{{C_{{\theta _{i}}}}{S_{{ \alpha _{i - 1}}}}}&{{C_{{\alpha _{i - 1}}}}}&{{C_{{\alpha _{i - 1}}}}{d_{i}}} \\ 0&0&0&1 \end{array}\displaystyle } \right ]. $$
(C.3)

Substituting \(i = 4\) in Eq. (C.3) and from Table 7, \({{{{\tilde{\mathbf{p}}}}}_{3}}\) can be obtained of the fourth column of the resulting matrix. Similarly, the homogeneous transformation \({\mathbf{{T}}}_{2}^{3}\) is obtained by using Eq. (C.3),

$$ {{\tilde{\mathbf{p}}}} = {\mathbf{{T}}}_{0}^{1}{\mathbf{{T}}}_{1}^{2}\left [ { \textstyle\begin{array}{c} {{f_{1}}\left ( {{q_{3}}} \right )} \\ {{f_{2}}\left ( {{q_{3}}} \right )} \\ {{f_{3}}\left ( {{q_{3}}} \right )} \\ 1 \end{array}\displaystyle } \right ], $$
(C.4)

where

$$ \textstyle\begin{array}{l} {{f_{1}}\left ( {{q_{3}}} \right ) = {a_{3}}{C_{3}} + {d_{4}}{S_{3}} + {a_{2}}}, \\ {{f_{2}}\left ( {{q_{3}}} \right ) = {a_{3}}{S_{3}} - {d_{4}}{C_{3}}}, \\ {{f_{3}}\left ( {{q_{3}}} \right ) = {d_{3}}}. \end{array} $$
(C.5)

Applying Eq. (C.3) for \({\mathbf{{T}}}_{0}^{1}\) and \({\mathbf{{T}}}_{1}^{2}\) in (C.4), we obtain

$$ \tilde{{\mathbf{{p}}}} = \left [ { \textstyle\begin{array}{c} {{C_{1}}{g_{1}} - {S_{1}}{g_{2}}} \\ {{S_{1}}{g_{1}} + {C_{1}}{g_{2}}} \\ {{g_{3}}} \\ 1 \end{array}\displaystyle } \right ], $$
(C.6)

where

$$ \textstyle\begin{array}{l} {{g_{1}} = {C_{2}}{f_{1}}\left ( {{q_{3}}} \right ) - {S_{2}}{f_{2}} \left ( {{q_{3}}} \right ),} \\ {{g_{2}} = {f_{3}}\left ( {{q_{3}}} \right ) + {d_{2}}}, \\ {{g_{3}} = - {S_{2}}{f_{1}}\left ( {{q_{3}}} \right ) - {C_{2}}{f_{2}} \left ( {{q_{3}}} \right )}. \end{array} $$
(C.7)

Let \(r\) be the magnitude squared of \({\mathbf{{p}}}\)

$$ r = g_{1}^{2} + g_{2}^{2} + g_{3}^{2}. $$
(C.8)

Substituting (C.7) into (C.8), it is obtained

$$ r = f_{1}^{2} + f_{2}^{2} + f_{3}^{2} + d_{2}^{2} + 2{d_{2}}{f_{3}}. $$
(C.9)

Equation (C.9) and the \(Z\)-component from (C.6) can be formulated as a system of two equations in the form

$$\begin{aligned} &r = {k_{3}} , \end{aligned}$$
(C.10a)
$$\begin{aligned} &{p_{z}} = - {k_{1}}{S_{2}} + {k_{2}}{C_{2}}, \end{aligned}$$
(C.10b)

where

$$ \textstyle\begin{array}{l} {k_{1}} = {f_{1}}, \\ {k_{2}} = - {f_{2}}, \\ {k_{3}} = f_{1}^{2} + f_{2}^{2} + f_{3}^{2} + d_{2}^{2} + 2{d_{2}}{f_{3}}. \end{array} $$
(C.11)

Then, after making the following substitutions in the (C.10a), a quadratic equation in \(u\) results which may be solved for \(q_{3}\):

$$ u = \tan \left ( {\frac{{{q_{3}}}}{2}} \right ),\quad {C_{3}} = \frac{{1 - {u^{2}}}}{{1 + {u^{2}}}},\quad {S_{3}} = \frac{{2u}}{{1 + {u^{2}}}}. $$
(C.12)

Once \(q_{3}\) is calculated, (C.10b) and (C.6) can be solved for \(q_{2}\) and \(q_{1}\) respectively. Having obtained \(q_{1}\), \(q_{2}\) and \(q_{3}\), \({\mathbf{{R}}}_{0}^{3}\) can be calculated and the orientation \({\mathbf{{R}}}_{3}^{6}\) of frame 3 relative to the frame 0 is given by

$$ {\mathbf{{R}}}_{3}^{6} = {\left ( {{\mathbf{{R}}}_{0}^{3}} \right )^{ - 1}}{\mathbf{{R}}}_{0}^{6}. $$
(C.13)

The last three joint angles \(q_{4}\), \(q_{5}\) and \(q_{6}\) can be solved by using the \(Z\)-\(Y\)-\(Z\) Euler angle solution given in [18]. The complete inverse kinematics solution for the PUMA-560 is

$$ \begin{aligned} &{q_{1}} = {\tan ^{ - 1}}\left ( {\frac{{{p_{y}}}}{{{p_{x}}}}} \right ) - {\tan ^{ - 1}}\left ( {\frac{{{g_{2}}}}{{{g_{1}}}}} \right ), \\ &{q_{2}} = {\tan ^{ - 1}}\left ( {\frac{{ - {k_{1}}}}{{{k_{2}}}}} \right ) \pm {\tan ^{ - 1}}\left ( { \frac{{\sqrt{k_{1}^{2} + k_{2}^{2} + p_{z}^{2}} }}{{{p_{z}}}}} \right ), \\ &{q_{3}} = {\tan ^{ - 1}}\left ( {\frac{{{d_{4}}}}{{{a_{3}}}}} \right ) \pm {\tan ^{ - 1}}\left ( { \frac{{\sqrt{a_{3}^{2} + d_{4}^{2} - K} }}{K}} \right ), \\ &{q_{4}} = {\tan ^{ - 1}}\left ( {\frac{{{{r'}_{33}}}}{{{{r'}_{13}}}}} \right ), \\ &{q_{5}} = {\tan ^{ - 1}}\left ( { \frac{{\sqrt{{{\left ( {{{r'}_{21}}} \right )}^{2}} + {{\left ( {{{r'}_{22}}} \right )}^{2}}} }}{{ - {{r'}_{23}}}}} \right ), \\ &{q_{6}} = {\tan ^{ - 1}}\left ( { \frac{{ - {{r'}_{22}}}}{{{{r'}_{21}}}}} \right ), \end{aligned} $$
(C.14)

where

$$ K = \frac{{r - a_{2}^{2} - a_{3}^{2} - {{\left ( {{d_{2}} + {d_{3}}} \right )}^{2}} - d_{4}^{2}}}{{2{a_{2}}}}, $$
(C.15)

and the elements \({r'}_{ij}\) correspond to the rotation matrix obtained in the right side of (C.13) and they are given by

$$ \textstyle\begin{array}{l} {{r'}_{13}} = {r_{13}}{C_{1}}{C_{23}} + {r_{23}}{S_{1}}{C_{23}} - {r_{33}}{S_{23}}, \\ {{r'}_{21}} = - {r_{11}}{C_{1}}{S_{23}} - {r_{21}}{S_{1}}{S_{23}} - {r_{31}}{C_{23}}, \\ {{r'}_{22}} = - {r_{12}}{C_{1}}{S_{23}} - {r_{22}}{S_{1}}{S_{23}} - {r_{32}}{C_{23}}, \\ {{r'}_{23}} = - {r_{13}}{C_{1}}{S_{23}} - {r_{23}}{S_{1}}{S_{23}} - {r_{33}}{C_{23}}, \\ {{r'}_{33}} = - {r_{13}}{S_{1}} + {r_{23}}{C_{1}}. \end{array} $$
(C.16)

Appendix D: Skew-symmetry of matrix \(\dot{\mathbf{D}}\left ( {\mathbf{{q}}} \right ) - 2{\mathbf{{C}}}\left ( {{\mathbf{{q}}},{\dot{\mathbf{q}}}} \right )\)

The skew-symmetry property is an important relationship between the inertia matrix \({\mathbf{{D}}}\left ( {\mathbf{{q}}} \right )\) and the matrix \({\mathbf{{C}}}\left ( {{\mathbf{{q}}},{\dot{\mathbf{q}}}} \right )\) [44, 48].

Proposition D.1

If \({\mathbf{{N}}}\left ( {{\mathbf{{q}}},{\dot{\mathbf{q}}}} \right ) = \dot{\mathbf{D}} \left ( {\mathbf{{q}}} \right ) - 2{\mathbf{{C}}}\left ( {{\mathbf{{q}}},{\dot{\mathbf{q}}}} \right )\), then \({\mathbf{{N}}}\left ( {{\mathbf{{q}}},{\dot{\mathbf{q}}}} \right )\) is skew-symmetric, i.e., their components \(n_{jk}\) satisfy \(n_{jk} = - n_{kj}\).

Proof

According to the chain rule, the \(kj\)th component of \(\dot{\mathbf{D}}\left ( {\mathbf{{q}}} \right )\) is given by

$$ {{\dot{d}}_{kj}} = \sum _{i = 1}^{n} { \frac{{\partial {d_{kj}}}}{{\partial {q_{i}}}}{{\dot{q}}_{i}}} .$$
(D.1)

Thus, the \(kj\)th component of \({\mathbf{{N}}}\left ( {{\mathbf{{q}}},{\dot{\mathbf{q}}}} \right ) = \dot{\mathbf{D}} \left ( {\mathbf{{q}}} \right ) - 2{\mathbf{{C}}}\left ( {{\mathbf{{q}}},{\dot{\mathbf{q}}}} \right )\) can be obtained as

$$ \begin{aligned} {n_{kj}} & = {{\dot{d}}_{kj}} - 2{c_{kj}} = \sum _{i = 1}^{n} {\left [ {\frac{{\partial {d_{kj}}}}{{\partial {q_{i}}}} - \left ( {\frac{{\partial {d_{kj}}}}{{\partial {q_{i}}}} + \frac{{\partial {d_{ki}}}}{{\partial {q_{j}}}} - \frac{{\partial {d_{ij}}}}{{\partial {q_{k}}}}} \right )} \right ]} {{ \dot{q}}_{i}} \\ & = \sum _{i = 1}^{n} {\left [ { \frac{{\partial {d_{ij}}}}{{\partial {q_{k}}}} - \frac{{\partial {d_{ki}}}}{{\partial {q_{j}}}}} \right ]} {{\dot{q}}_{i}}. \end{aligned} $$
(D.2)

Since \({\mathbf{{D}}}\left ( {\mathbf{{q}}} \right )\) is symmetric, \({d_{ij}} = {d_{ji}}\), so that by interchanging the indices k and j in (D.2) it follows that

$$ {n_{jk}} = - {n_{kj}} ,$$
(D.3)

which completes the proof. □

Appendix E: Stability analysis of the numerical scheme

The stability analysis of the fractional scheme (8.8) is examined below. Recall that, given the fractional-order differential equation

$$ {}_{0}^{\mathit{CF}}D_{t}^{\alpha }x\left ( t \right ) = f\left ( {t,x\left ( t \right )} \right ), $$
(E.1)

the solution can be obtained by

$$ {x_{n + 1}} = {x_{n}} + \left [ { \frac{{1 - \alpha }}{{B\left ( \alpha \right )}} + \frac{{3\alpha h}}{{2B\left ( \alpha \right )}}} \right ]f\left ( {{t_{n}},{x_{n}}} \right ) - \left [ {\frac{{1 - \alpha }}{{B\left ( \alpha \right )}} + \frac{{\alpha h}}{{2B\left ( \alpha \right )}}} \right ]f\left ( {{t_{n - 1}},{x_{n - 1}}} \right ). $$

The above equation can be expressed as

$$ {x_{n + 1}} = {x_{n}} + Rf\left ( {{t_{n}},{x_{n}}} \right ) - Sf \left ( {{t_{n - 1}},{x_{n - 1}}} \right ), $$
(E.2)

where

$$ R = \left [ {\frac{{1 - \alpha }}{{B\left ( \alpha \right )}} + \frac{{3\alpha h}}{{2B\left ( \alpha \right )}}} \right ], \qquad S = \left [ {\frac{{1 - \alpha }}{{B\left ( \alpha \right )}} + \frac{{\alpha h}}{{2B\left ( \alpha \right )}}} \right ]. $$

By using (E.1), (E.2) becomes

$$ {x_{n + 1}} = \left ( {1 + R} \right ){x_{n}} - S{x_{n - 1}}. $$
(E.3)

According to the Von-Neumann stability analysis [11], the terms in the above equation can be written as

$$ \textstyle\begin{array}{l} {x_{n + 1}} = {{\hat{x}}_{n + 1}}{e^{\left ( {n + 1} \right )i\Delta t}}, \\ {x_{n}} = {{\hat{x}}_{n}}{e^{\left ( n \right )i\Delta t}}, \\ {x_{n - 1}} = {{\hat{x}}_{n - 1}}{e^{\left ( {n - 1} \right )i\Delta t}}. \end{array} $$
(E.4)

By substituting (E.4) into (E.3)

$$ {\hat{x}_{n + 1}}{e^{\left ( {n + 1} \right )i\Delta t}} = \left ( {1 + R} \right ){\hat{x}_{n}}{e^{\left ( n \right )i\Delta t}} - S{\hat{x}_{n - 1}}{e^{\left ( {n - 1} \right )i\Delta t}}, $$
(E.5)

which reduces to

$$ {\hat{x}_{n + 1}}{e^{i\Delta t}} = \left ( {1 + R} \right ){\hat{x}_{n}} - S{\hat{x}_{n - 1}}{e^{ - i\Delta t}}. $$
(E.6)

If a recursive formula is applied, when \(n = 0\), we get

$$ {{\hat{x}}_{1}}{e^{i\Delta t}} = \left ( {1 + R} \right ){{\hat{x}}_{0}}. $$
(E.7)

By taking the norms of both sides of (E.6), we have

$$ \left \| {{{\hat{x}}_{1}}{e^{i\Delta t}}} \right \| = \left \| {\left ( {1 + R} \right ){{\hat{x}}_{0}}} \right \| , $$
(E.8)

so that

$$ \left \| {{{\hat{x}}_{1}}} \right \| = \left ( {1 + R} \right )\left \| {{{\hat{x}}_{0}}} \right \| . $$
(E.9)

If

$$ h \le 0.55, \qquad \alpha > \frac{1}{{1 - 1.9167h}}, $$
(E.10)

and we assume that

$$ \forall n \ge \left | {{{\hat{x}}_{n}}} \right | < \left | {{{\hat{x}}_{0}}} \right | ,$$
(E.11)

then

$$ \begin{aligned} \left | {{{\hat{x}}_{n + 1}}} \right | & \le \left ( {1 + R} \right )\left | {{{\hat{x}}_{n}}} \right |\left | {{e^{ - i\Delta t}}} \right | - S\left | {{{\hat{x}}_{n - 1}}} \right |\left | {{e^{ - 2i \Delta t}}} \right | \\ & \le \left ( {1 + R} \right )\left | {{{\hat{x}}_{n}}} \right | - S \left | {{{\hat{x}}_{n - 1}}} \right |. \end{aligned} $$
(E.12)

By hypothesis, we have [41]

$$ \begin{aligned} \left | {{{\hat{x}}_{n + 1}}} \right | & < \left ( {1 + R} \right )\left | {{{\hat{x}}_{0}}} \right | - S\left | {{{\hat{x}}_{0}}} \right | \\ & < \left ( {1 + R - S} \right )\left | {{{\hat{x}}_{0}}} \right | \\ & < \left ( {1 + R - S} \right ) < 1. \end{aligned} $$
(E.13)

Thus, the fractional scheme (8.8) is conditionally stable.

Appendix F: Nomenclature

\({}_{a}^{\mathit{CFC}}D_{t}^{\varsigma }\)

Caputo–Fabrizio–Caputo fractional-order derivative.

\({}_{a}^{\mathit{ABC}}I_{t}^{\vartheta }\)

Atangana–Baleanu–Caputo fractional-order integral.

\({}_{a}^{\mathit{RL}}I_{t}^{\vartheta }\)

Riemann–Liouville fractional-order integral.

h

integration step size.

\(\left (i_{d},i_{q}\right )\)

stator currents on d − q axis (A).

\(\left (u_{d},u_{q}\right )\)

stator voltage inputs on d − q axis (V).

\(\psi _{d}\)

rotor flux linkage (Wb).

\(\psi _{d_{\mathit{ref}}}\)

reference rotor flux linkage (Wb).

\(n _{p}\)

number of pair pole pairs.

ω

rotor angular speed (rad/seg).

\(\omega _{d}\)

desired angular speed (rad/seg).

J

moment of inertia of the motor (kg m2).

\(\tau _{L}\)

load torque (M m).

\(\tau _{\mathit{em}}\)

electromagnetic torque (M m).

\(\tau _{d}\)

desired load torque (M m).

\(\tau _{f}\)

friction torque (M m).

M

mutual inductance (H).

\(L_{s}\)

stator inductance (H).

\(L_{r}\)

rotor inductance (H).

\(R_{s}\)

stator resistance (Ω).

\(R_{r}\)

rotor resistance (Ω).

\(v_{d}\), \(v_{q}\)

input voltages of the stator (V).

θ

position angular of the induction motor (rad).

\(f_{c}\)

Coulomb friction coefficient (N m).

\(f_{v}\)

viscous friction coefficient (N m s).

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Lavín-Delgado, J.E., Solís-Pérez, J.E., Gómez-Aguilar, J.F. et al. Trajectory tracking control based on non-singular fractional derivatives for the PUMA 560 robot arm. Multibody Syst Dyn 50, 259–303 (2020). https://doi.org/10.1007/s11044-020-09752-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11044-020-09752-y

Keywords

Navigation