Stastaball: Design and Control of a Statically Stable Ball Robot
Abstract
:1. Introduction
2. Concept Design and Control
2.1. Design Principle
2.2. Robot Kinematics and Dynamics
2.3. Acceleration Control Algorithm
3. Webots Simulation
3.1. Building the Simulation
3.2. Testing in Webots
3.2.1. Open-Loop Control
3.2.2. Closed-Loop Control
4. Prototype
4.1. Mechanical Build
- A halo located around the lower hemisphere of the ball. The purpose of the halo ring is to provide a mounting point for the drive wheels whilst lowering the centre of mass of the robot. The halo was made in two layers, this provided for a more rigid structure and increased the amount of weight below the centre of the ball. The use of additional bolts on the halo allowed for the adjustment of the weight and centre of mass of the robot. The double-layered design also made cable management much simpler as the wires were secured, routed within the layers. In addition, the halo served as a bumper for the robot;
- Supporting arms, attached to a top mounting plate, supported the halo in the correct position. Similar to the halo, these were made in two layers. It was important to optimise the mass of this part of the structure as its location high on the robot significantly affects the position of the overall centre of mass.
- Three symmetrically placed driven omnidirectional wheels. Due to the weight of the corresponding motors and batteries, these are placed on the halo to help maintain an overall low centre of mass;
- Three passive omnidirectional wheels placed on the supporting arms ensured that the drive wheels maintained contact with the ball;
- Three 27:1 planetary geared stepper motors (Stepperonline, 17HS13-0404S-PG27) were used to drive the robot. Each of these 12V motors had a maximum permissible torque of 3 Nm and maximum speed of 9 rpm. The motor speed was limited to their start/stop range, and motor velocity control was operated in an open-loop configuration.
4.2. Electronics
- A primary Arduino located in the top housing of the robot provides the control commands and communications interface;
- Three secondary Arduinos are used to control each motor through a Popolu DRV8825 driver chip. They are connected to the primary Arduino via I2C communications and positioned close to their respective motors;
- Three Anker 5 V, 10,400 mAH power banks (one for each motor) supplies the required current to the motors and corresponding drive electronics. These were attached close to the motors using custom 3D printed housing. The Arduino and sensors are directly connected to the power banks; the motors are connected via a Popolu 12V step-up voltage regulator (U3V70F12). The primary Arduino is powered from one of these power banks;
- A six-degree-of-freedom MPU6050 motion-tracking device, containing an accelerometer and gyroscope, is utilised to measure roll, pitch, and yaw values. This IMU is located in the top housing, vertically aligned with the centre of mass and connected to the primary Arduino;
- A HM-10 Bluetooth module provides the option to remotely control the robot. The Dabble smartphone app was used as the user interface for this option;
- Additional sensors included an array of HC-SR04 ultrasonic sensors and an OpenMV camera. Although not reported here, the intention is to utilise these sensors towards the future autonomous control of the robot.
4.3. Final Adjustments
4.4. Testing
4.5. Discussion
4.5.1. Current Issues
4.5.2. Future Developments
5. Conclusions
Author Contributions
Funding
Data Availability Statement
Acknowledgments
Conflicts of Interest
Appendix A
References
- Lauwers, T.; Kantor, G.; Hollis, R. One is enough! In Proceedings of the International Symposium for Robotics Research, San Francisco, CA, USA, 12–15 October 2005; pp. 327–336. [Google Scholar]
- Shut, R.; Hollis, R. Development of a Humanoid Dual Arm System for a Single Spherical Wheeled Balancing Mobile Robot. In Proceedings of the 2019 IEEE-RAS 19th International Conference on Humanoid Robots (Humanoids), Toronto, ON, Canada, 15–17 October 2019; pp. 499–504. [Google Scholar] [CrossRef]
- Kumagai, M.; Ochiai, T. Development of a Robot Balanced on a Ball—First Report, Implementation of the Robot and Basic Control. J. Robot. Mechatron. 2010, 22, 348–355. [Google Scholar] [CrossRef]
- Fankhauser, P.; Gwerder, C. Modeling and Control of a Ballbot. Bachelor’s Thesis, Swiss Federal Institute of Technology, Zurich, Switzerland, 2010. [Google Scholar]
- Jespersen, T.K. Kugle—Modelling and Control of a Ball-Balancing Robot. Master’s Thesis, Aalborg University, Aalborg, Denmark, April 2019. [Google Scholar]
- Gao, X.; Yan, L.; He, Z.; Wang, G.; Chen, I.-M. Design and Modeling of a Dual-Ball Self-Balancing Robot. IEEE Robot. Autom. Lett. 2022, 7, 12491–12498. [Google Scholar] [CrossRef]
- FESTO. Available online: https://www.festo.com/gb/en/e/about-festo/research-and-development/bionic-learning-network/highlights-from-2018-to-2021/bionicmobileassistant-id_326923/ (accessed on 20 February 2023).
- Nagarajan, U.; Kantor, G.; Hollis, R. The ballbot: An omnidirectional balancing mobile robot. Int. J. Rob. Res. 2014, 33, 917–930. [Google Scholar] [CrossRef]
- Nagarajan, U.; Hollis, R. Shape space planner for shape-accelerated balancing mobile robots. Int. J. Rob. Res. 2013, 32, 1323–1341. [Google Scholar] [CrossRef] [Green Version]
- Hertig, L.; Schindler, D.; Bloesch, M.; Remy, C.; Siegwart, R. Unified state estimation for a ballbot. In Proceedings of the 2013 IEEE International Conference on Robotics and Automation, Karlsruhe, Germany, 6–10 May 2013; pp. 2471–2476. [Google Scholar] [CrossRef]
- Jespersen, T.K.; Ahdab, M.A.; Méndez, J.D.D.F.; Damgaard, M.R.; Hansen, K.D.; Pedersen, R.; Bak, T. Path-Following Model Predictive Control of Ballbots. In Proceedings of the 2020 IEEE International Conference on Robotics and Automation (ICRA), Paris, France, 31 May–31 August 2020; pp. 1498–1504. [Google Scholar] [CrossRef]
- Zhou, Y.; Lin, J.; Wang, S.; Zhang, C. Learning Ball-Balancing Robot through Deep Reinforcement Learning. In Proceedings of the 2021 International Conference on Computer, Control and Robotics (ICCCR), Shanghai, China, 8–10 January 2021; pp. 1–8. [Google Scholar] [CrossRef]
- DIY Sphere Robot. Available online: https://www.instructables.com/DIY-Sphere-Robot (accessed on 20 February 2023).
- Sphero. Available online: https://sphero.com/products/sphero-bolt (accessed on 20 February 2023).
- Chase, R.; Pandya, A. A Review of Active Mechanical Driving Principles of Spherical Robots. Robotics 2012, 1, 3–23. [Google Scholar] [CrossRef]
- Tholapu, S.; Sudheer, A.P.; Joy, M.L. Kinematic Modelling and Structural Analysis of a Spherical Robot: BALL-E. IOP Conf. Ser. Mater. Sci. Eng. 2021, 1132, 012034. [Google Scholar] [CrossRef]
- Cardini, S.B. A history of the monocycle stability and control from inside the wheel. IEEE Control. Syst. Mag. 2006, 26, 22–26. [Google Scholar] [CrossRef]
- Cieslak, P.; Buratowski, T.; Uhl, T.; Giergiel, M. The mono-wheel robot with dynamic stabilisation. Rob. Auton. Syst. 2011, 59, 611–619. [Google Scholar] [CrossRef]
- Geist, A.R.; Fiene, J.; Tashiro, N.; Jia, Z.; Trimpe, S. The Wheelbot: A Jumping Reaction Wheel Unicycle. IEEE Robot. Autom. Lett. 2022, 7, 9683–9690. [Google Scholar] [CrossRef]
- Shen, J.; Hong, D. OmBURo: A Novel Unicycle Robot with Active Omnidirectional Wheel. In Proceedings of the 2020 IEEE International Conference on Robotics and Automation (ICRA), Paris, France, 31 May–31 August 2020; pp. 8237–8243. [Google Scholar] [CrossRef]
- Cai, C.; Lu, J.; Li, Z. Kinematic Analysis and Control Algorithm for the Ballbot. IEEE Access 2019, 7, 38314–38321. [Google Scholar] [CrossRef]
- Han, H.Y.; Han, T.Y.; Jo, H.S. Development of omnidirectional self-balancing robot. In Proceedings of the 2014 IEEE International Symposium on Robotics and Manufacturing Automation (ROMA), Kuala Lumpur, Malaysia, 15–16 December 2014; pp. 57–62. [Google Scholar] [CrossRef]
- Goodwill, S.; Haake, S. Modelling of tennis ball impacts on a rigid surface. Proc. Inst. Mech. Eng. C-J. Mech. E 2004, 218, 1139–1153. [Google Scholar] [CrossRef]
- IEEE Spectrum. Available online: https://spectrum.ieee.org/042910-a-robot-that-balances-on-a-ball (accessed on 20 February 2023).
- Siegwart, R.; Nourbakhsh, I.R. Introduction to Autonomous Mobile Robots, 1st ed.; The MIT Press: Cambridge, MA, USA, 2004; pp. 53–67. [Google Scholar]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Fornarelli, L.; Young, J.; McKenna, T.; Koya, E.; Hedley, J. Stastaball: Design and Control of a Statically Stable Ball Robot. Robotics 2023, 12, 34. https://doi.org/10.3390/robotics12020034
Fornarelli L, Young J, McKenna T, Koya E, Hedley J. Stastaball: Design and Control of a Statically Stable Ball Robot. Robotics. 2023; 12(2):34. https://doi.org/10.3390/robotics12020034
Chicago/Turabian StyleFornarelli, Luca, Jack Young, Thomas McKenna, Ebenezer Koya, and John Hedley. 2023. "Stastaball: Design and Control of a Statically Stable Ball Robot" Robotics 12, no. 2: 34. https://doi.org/10.3390/robotics12020034
APA StyleFornarelli, L., Young, J., McKenna, T., Koya, E., & Hedley, J. (2023). Stastaball: Design and Control of a Statically Stable Ball Robot. Robotics, 12(2), 34. https://doi.org/10.3390/robotics12020034