Abstract
Motion analysis and control of a pendulum-driven spherical robot (PDSR) on an inclined plane with a variable slope is investigated. Firstly, the mathematical model of a PDSR on a variable-slope inclined plane is deduced applying a Lagrangian formulation. Afterwards, in the presence of an unknown external disturbance, the terminal sliding mode control (TSMC) technique is employed to stabilize the robot on the inclined plane, while the plane is still moving. In other words, the terminal sliding mode disturbance observer is used to estimate the unknown disturbance. Based on the disturbance estimation, the TSMC scheme is established to control the single-input and single-output nonlinear system with control singularity and an unknown nonsymmetric control input saturation. In fact, a compound disturbance is defined and estimated, which includes the external disturbance, the control singularity and the unknown input saturation. Simulations are then conducted to validate the proposed approach for motion control of a PDSR on a variable-slope inclined plane with an unknown external disturbance and nonsymmetric input limits.
Similar content being viewed by others
Abbreviations
- \(\phi \) :
-
Rotation of the spherical shell w.r.t. the (inclined) plane
- \(\beta \) :
-
Rotation of the main shaft w.r.t. the spherical shell
- \(\theta \) :
-
Instantaneous angle of the pendulum w.r.t. the perpendicular to the (inclined) plane
- \(\alpha \) :
-
Angle of the inclined plane
- \(m_\mathrm{p} \) :
-
Mass of the pendulum
- \(m_\mathrm{s} \) :
-
Mass of the spherical shell
- M :
-
Mass of the whole robot
- \(I_\mathrm{A} \) :
-
Spherical shell moment of inertia about point A (centre)
- \(I_\mathrm{C} \) :
-
Spherical shell moment of inertia about point C (contact point)
- \(\rho \) :
-
Radius of the spherical shell
- r :
-
Radius of the pendulum
- \(r_G \) :
-
Radius of the robot mass centre
- \({{\varvec{q}}}\) :
-
Vector of generalized coordinates, i.e., \({{\varvec{q}}}=\left[ {\phi \quad \theta } \right] ^\mathrm{T}\)
- \({{\varvec{Q}}}\) :
-
Vector of generalized forces, i.e., \({{\varvec{Q}}}=\left[ {{{Q}}_\phi \quad {{Q}}_\theta } \right] ^\mathrm{T}\)
- T :
-
Total kinetic energy of the system
- V :
-
Total potential energy of the system
- \({\mathcal {L}}\) :
-
Lagrangian, i.e., \({\mathcal {L}}=T-V\)
- \(T_\mathrm{p} \) :
-
Kinetic energy of the pendulum
- \(T_\mathrm{s} \) :
-
Kinetic energy of the spherical shell
- \({\varvec{\omega }}_\mathrm{s} \) :
-
Angular velocity of the spherical shell
- \({{\varvec{V}}}_\mathrm{A} \) :
-
Velocity of point A (shell centre)
- \({{\varvec{V}}}_\mathrm{C} \) :
-
Velocity of point C (contact point)
- \({{\varvec{V}}}_\mathrm{A/C} \) :
-
Velocity of point A w.r.t. point C
- \({{\varvec{V}}}_\mathrm{p} \) :
-
Velocity of the pendulum
- \({{\varvec{V}}}_\mathrm{p/A} \) :
-
Velocity of the pendulum w.r.t. point A
- x :
-
Position of the robot on the inclined plane
- \(x_0 \) :
-
Initial position of the robot on the inclined plane
- g :
-
Earth gravitational acceleration
- \(\left( {{{\varvec{i}}},{{\varvec{j}}},{{\varvec{k}}}} \right) \) :
-
Unit vectors in x, y and z directions
- W :
-
Work done by external forces/moments
- \(\tau _\mathrm{m} \) :
-
Torque of the motor
- \(\theta _\mathrm{e} \) :
-
Desired angle for \(\theta \) in the equilibrium state of the robot
- \({{\varvec{x}}}\) :
-
Vector of state variables, i.e., \({{\varvec{x}}}=\left[ {x_1 x_2 \ldots x_n } \right] ^\mathrm{T}\)
- u :
-
Control input
- \(u_{\mathrm{min}} ,u_{\mathrm{max}} \) :
-
Lower and upper limits of the control input
- y :
-
Output of the system
- \(y_d \) :
-
Desired output
- d :
-
Unknown external disturbance
- D :
-
Compound disturbance
- \({\widehat{D}}\) :
-
Estimated compound disturbance
- \(\tau ,k,\gamma , \epsilon , p_0, q_0,\) \(p_i, q_i, \alpha _i , \beta _i ,\delta , \mu \) :
-
Controller and estimator design parameters
- \(\hbox {sign}\left( *\right) \) :
-
Sign function
References
Armour, R.H., Vincent, J.F.: Rolling in nature and robotics: a review. J. Bionic Eng. 3(4), 195–208 (2006)
Zhan, Q., Zhou, T., Chen, M., Cai, S.: Dynamic trajectory planning of a spherical mobile robot. In: 2006 IEEE Conference on Robotics, Automation and Mechatronics, pp. 1–6. IEEE (2006)
Zhan, Q., Cai, Y., Liu, Z.: Near-optimal trajectory planning of a spherical mobile robot for environment exploration. In: 2008 IEEE Conference on Robotics, Automation and Mechatronics, pp. 84–89. IEEE (2008)
Cai, Y., Zhan, Q., Xi, X.: Path tracking control of a spherical mobile robot. Mech. Mach. Theory 51, 58–73 (2012)
Mahboubi, S., Fakhrabadi, M.M.S., Ghanbari, A.: Design and implementation of a novel spherical mobile robot. J. Intell. Robot. Syst. 71(1), 43–64 (2013)
Peng, Z., Wen, G., Yang, S., Rahmani, A.: Distributed consensus-based formation control for nonholonomic wheeled mobile robots using adaptive neural network. Nonlinear Dyn. 86(1), 605–622 (2016)
Tayefi, M., Geng, Z., Peng, X.: Coordinated tracking for multiple nonholonomic vehicles on SE (2). Nonlinear Dyn. 87(1), 665–675 (2017)
Li, Z., Canny, J.: Motion of two rigid bodies with rolling constraint. IEEE Trans. Robot. Autom. 6(1), 62–72 (1990)
Mojabi, P.: Introducing August: a novel strategy for an omnidirectional spherical rolling robot. In: IEEE International Conference on Robotics and Automation, 2002. Proceedings. ICRA’02, vol. 4, pp. 3527–3533. IEEE (2002)
Bhattacharya, S., Agrawal, S.K.: Design, experiments and motion planning of a spherical rolling robot. In: IEEE International Conference on Robotics and Automation, 2000. Proceedings. ICRA’00, vol. 2, pp. 1207–1212. IEEE (2000)
Bhattacharya, S., Agrawal, S.K.: Spherical rolling robot: a design and motion planning studies. IEEE Trans. Robot. Autom. 16(6), 835–839 (2000)
Halme, A., Schonberg, T., Wang, Y.: Motion control of a spherical mobile robot. In: 1996 4th International Workshop on Advanced Motion Control, 1996. AMC’96-MIE. Proceedings, vol. 1, pp. 259–264. IEEE (1996)
Halme, A., Suomela, J., Schönberg, T., Wang, Y.: A spherical mobile micro-robot for scientific applications. In: ASTRA, 96 (1996)
Bicchi, A., Balluchi, A., Prattichizzo, D., Gorelli, A.: Introducing the “SPHERICLE”: an experimental testbed for research and teaching in nonholonomy. In: 1997 IEEE International Conference on Robotics and Automation, 1997. Proceedings, vol. 3, pp. 2620–2625. IEEE (1997)
Marigo, A., Bicchi, A.: A local-local planning algorithm for rolling objects. In: Robotics and Automation, 2002. IEEE International Conference on Proceedings. ICRA’02, vol. 2, pp. 1759–1764. IEEE (2002)
Joshi, V.A., Banavar, R.N.: Motion analysis of a spherical mobile robot. Robotica 27(03), 343–353 (2009)
Joshi, V.A., Banavar, R.N., Hippalgaonkar, R.: Design and analysis of a spherical mobile robot. Mech. Mach. Theory 45(2), 130–136 (2010)
Liu, D., Sun, H., Jia, Q.: A family of spherical mobile robot: driving ahead motion control by feedback linearization. In: 2nd International Symposium on Systems and Control in Aerospace and Astronautics, 2008. ISSCAA 2008, pp. 1–6. IEEE (2008)
Qiang, Z., Chuan, J., Xiaohui, M., Yutao, Z.: Mechanism design and motion analysis of a spherical mobile robot. Chin. J. Mech. Eng. 18(4), 542–545 (2005)
Qiang, Z., Zengbo, L., Yao, C.: A back-stepping based trajectory tracking controller for a non-chained nonholonomic spherical robot. Chin. J. Aeronaut. 21(5), 472–480 (2008)
Hanxu, S., Aiping, X., Qingxuan, J., Liangqing, W.: Omnidirectional kinematics analysis on bi-driver spherical robot. J. Beijing Univ. Aeronaut. Astronaut. 31(7), 735 (2005)
Cameron, J.M., Book, W.J.: Modeling mechanisms with nonholonomic joints using the Boltzmann-Hamel equations. Int. J. Robot. Res. 16(1), 47–59 (1997)
Yu, T., Sun, H., Zhang, Y.: Dynamic analysis of a spherical mobile robot in rough terrains. In: SPIE Defense, Security, and Sensing (pp. 80440V-80440V). International Society for Optics and Photonics (2011)
Yu, T., Sun, H., Zhang, Y., Zhao, W.: Control and stabilization of a pendulum-driven spherical mobile robot on an inclined plane. In: Proceedings of 11th International Symposium on Artificial Intelligence, Robotics and Automation in Space (2012)
Yu, T., Sun, H., Jia, Q., Zhang, Y., Zhao, W.: Stabilization and control of a spherical robot on an inclined plane. Res. J. Appl. Sci. Eng. Technol. 5(6), 2289–2296 (2013)
Roozegar, M., Mahjoob, M.J.: Modelling and control of a non-holonomic pendulum-driven spherical robot moving on an inclined plane: simulation and experimental results. IET Control Theory Appl. 11, 541–549 (2017)
Azizi, M.R., Naderi, D.: Dynamic modeling and trajectory planning for a mobile spherical robot with a 3Dof inner mechanism. Mech. Mach. Theory 64, 251–261 (2013)
Roozegar, M., Mahjoob, M.J., Shafiekhani, A.: using dynamic programming for path planning of a spherical mobile robot. In: International Conference on Advances in Control Engineering, Istanbul, Turkey (2013)
Roozegar, M., Mahjoob, M.J., Jahromi, M.: DP-based path planning of a spherical mobile robot in an environment with obstacles. J. Frankl. Inst. 351(10), 4923–4938 (2014)
Roozegar, M., Mahjoob, M.J., Jahromi, M.: Optimal motion planning and control of a nonholonomic spherical robot using dynamic programming approach: simulation and experimental results. Mechatronics 39, 174–184 (2016)
Esfandyari, M.J., Roozegar, M., Panahi, M.S., Mahjoob, M.: Motion planning of a spherical robot using eXtended Classifier Systems. In: 2013 21st Iranian Conference on Electrical Engineering (ICEE), pp. 1–6. IEEE (2013)
Roozegar, M., Mahjoob, M.J., Esfandyari, M.J., Panahi, M.S.: XCS-based reinforcement learning algorithm for motion planning of a spherical mobile robot. Appl. Intell. 45(3), 736–746 (2016)
Taheri-Andani, M., Mahjoob, M.J., Ayati, M.: Control of a spherical mobile robot using sliding mode and fuzzy sliding mode controllers. In: 2016 1st International Conference on New Research Achievements in Electrical and Computer Engineering, Tehran, Iran. IEEE (2016)
Roozegar, M., Mahjoob, M.J., Ayati, M.: Adaptive estimation of nonlinear parameters of a nonholonomic spherical robot using a modified fuzzy-based speed gradient algorithm. Regul. Chaotic Dyn. 22(3), 226–238 (2017)
Yu, L., Fei, S., Li, X.: Robust adaptive neural tracking control for a class of switched affine nonlinear systems. Neurocomputing 73(10), 2274–2279 (2010)
Yu, L., Zhang, M., Fei, S.: Non-linear adaptive sliding mode switching control with average dwell-time. Int. J. Syst. Sci. 44(3), 471–478 (2013)
Zi, B., Sun, H., Zhu, Z., Qian, S.: The dynamics and sliding mode control of multiple cooperative welding robot manipulators. Int. J. Adv. Robot. Syst. 9(53), 1–10 (2012)
Yu, L., Fei, S., Qian, W.: Robust adaptive control for single input/single output discrete systems via multi-model switching. Proc. Inst. Mech. Eng. Part I J. Syst. Control Eng. 228(1), 42–48 (2014)
Yu, L., Fei, S.: Robustly stable switching neural control of robotic manipulators using average dwell-time approach. Trans. Inst. Meas. Control 36(6), 789–796 (2014)
Yu, L., Fei, S., Sun, L., Huang, J.: An adaptive neural network switching control approach of robotic manipulators for trajectory tracking. Int. J. Comput. Math. 91(5), 983–995 (2014)
Yu, L., Fei, S., Sun, L., Huang, J., Yang, G.: Design of robust adaptive neural switching controller for robotic manipulators with uncertainty and disturbances. J. Intell. Robot. Syst. 77(3–4), 571–581 (2015)
Qian, S., Zi, B., Ding, H.: Dynamics and trajectory tracking control of cooperative multiple mobile cranes. Nonlinear Dyn. 83(1–2), 89–108 (2016)
Chen, M., Wu, Q.X., Cui, R.X.: Terminal sliding mode tracking control for a class of SISO uncertain nonlinear systems. ISA Trans. 52(2), 198–206 (2013)
Yu, X., Zhihong, M.: Fast terminal sliding-mode control design for nonlinear dynamical systems. IEEE Trans. Circuits Syst. I Fundam. Theory Appl. 49(2), 261–264 (2002)
Aliakbari, S., Ayati, M., Osman, J.H., Sam, Y.M.: Second-order sliding mode fault-tolerant control of heat recovery steam generator boiler in combined cycle power plants. Appl. Therm. Eng. 50(1), 1326–1338 (2013)
Liu, J., Wang, X.: Advanced Sliding Mode Control for Mechanical Systems: Design, Analysis and MATLAB Simulation. Springer Science & Business Media, Berlin (2012)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Roozegar, M., Ayati, M. & Mahjoob, M.J. Mathematical modelling and control of a nonholonomic spherical robot on a variable-slope inclined plane using terminal sliding mode control. Nonlinear Dyn 90, 971–981 (2017). https://doi.org/10.1007/s11071-017-3705-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11071-017-3705-9