Skip to content

Unicycle Robot Prototype

Project Category: Mechanical

Join our presentation

About our project

The purpose of this project is to build an autonomous unicycle robot prototype capable of straight-line motion and standing through self-stabilization with the primary use of a three-dimensional dynamics equation developed for a unicycle model.

We hope that we can bring this kind of unicycle into industry in performing some little work and completing tasks within a more limited space. The hope is that by importing this kind of unicycle into the market, companies can reduce the labour needed and lower the manufacturing cost. On the other hand, the theory behind this specific type of unicycle can also contribute to many other fields.

The project was originally launched in 2019 with the attempt of using PID control, however, the progress was slowed down due to the covid-19 outbreak. This year, the project restarted with the complete 3D equations model built by our sponsor Dr.Budiman and an impressive prototype was built by the team!
The prototype cost: $1,200 + GST.

Meet our team members

Borden Li
Mahmoud Elmalawany
Mohamad Aly Sherif
Victor Edet
Yuxiao Lin
Ziyuan Tang  

Details about our design

CONCEPTURE DESIGN:

Prototype Model: Designed in Solid-works to create a symmetrical unicycle model without the features of flywheel.

Simulation: MATLAB prediction of the unicycle motion plan and required torques by using the reverse kinematics theory. (including stand still & move along a straight line)

Control System: Arduino program to control two screw motors to achieve pitch and roll motion respectively and the hub-motor to achieve spin motion with all motors in synchronized motion to achieve standing.

Manufacturing: Procurement and assembly of the BudiBot by selecting the satisfactory equipment, assembling based on the Solid-works model and testing for the demanded features. (including :FDM printer, Electrical Bike Hub Motor, Screw Motor, Lead-acid batteries, wiring etc.)

WHAT MAKES OUR DESIGN INNOVATIVE

Although there is already various kinds of unicycle in the market now, and some labs have also invented their own unicycle robots. The special and highlight point of our unicycle robot is that we are using a new theory which has never been explored before. The unique 3D kinematic equations were built and verified by our project sponsor Dr.Budiman. He has spent the past two years researching and developing the equations. From the backward and forward calculations we are now confident with the equations.

WHAT MAKES OUR DESIGN SOLUTION EFFECTIVE

Compared the design from our team to previous one, we add more stable structure and ensure the symmetry of the model to better approach the self-stabilization function. And this year, we introduced the MATLAB simulation to predict the kinematics performance of the unicycle robot. The sinusoidal motion plan was assumed for Budibot, by doing the backward and forward simulation then we can assist the control system and make the motion into reality. The required torques for each motor can be generated by the simulation and this helped us fulfill the requirement of our attached motors. The solid and trustable equations and simulation results makes our design unique and makes our design solution effective.

HOW WE VALIDATED OUR DESIGN SOLUTION

Our design solution will be validated by several testing assignments:

Stage One: Manually Held BudiBot

  1. Check if MPU6050 sensor correctly outputs desired angles
  2. Response of screw motor to incline in the roll direction
  3. Response of hub motor to incline in the pitch direction

Stage Two: Self-supported BudiBot

  1. Maintain balance for 10 seconds (the angles of movement should within 10 degrees)

Stage Three: Self-supported Linear moving BudiBot

  1. Keep balance when the unicycle starts/stops and maintain at constant speed
  2. Move 3 meters forward without falling ( Moved to the summer project )
FEASIBILITY OF OUR DESIGN SOLUTION
  1. Trustable equations models with resulting torques that can be achieved by motors.
  2. Functional design similar to a unicycle model and improvement in the geometry symmetry.
  3. Arduino control system was compatible with all motors and delivered reliable results for improved testing.
  4. Manufacturing /procurement with high repeatability and overall inexpensive.

Partners and mentors

We want to thank the many people who helped us with this project. Our sponsor Dr.Budiman provided the project funding and supported us whenever we came across an issue. Our mechanical engineering professor Philip Egberts and teaching assistant Tom Mathias guided us through the process with patience and great advice. And, our friend Khaled Elmalawany from electrical engineering validated the control system code.

Our photo gallery

References

  1. Dejan, “Arduino and MPU6050 Accelerometer and Gyroscope Tutorial,” 9 April 2019. [Online]. Available: https://howtomechatronics.com/tutorials/arduino/arduino-and- mpu6050-accelerometer-and-gyroscope-tutorial/. [Accessed 9 December 2021].
  2. Curio Res, “How to control a DC motor with an encoder,” 26 February 2021. [Online]. Available: https://www.youtube.com/watch?v=dTGITLnYAY0&ab_channel=CurioRes. [Accessed 29 September 2021].
  3. SolidApps, “Helical Gear Creation in SolidWorks 2012,” 15 March 2012. [Online]. Available: https://www.youtube.com/watch?v=XJ2nAUeiCHM&ab_channel=SolidApps. [Accessed 9 December 2021].
  4. M. Schoeffler, “Micheal Schoeffler,” 5 October 2017. [Online]. Available: https://mschoeffler.com/2017/10/05/tutorial-how-to-use-the-gy-521-module-mpu-6050- breakout-board-with-the-arduino-uno/. [Accessed 9 December 2021].
  5. M. J. Jayakumar, “Introduction to Matlab Simulink and Arduino,” 14 May 2016. [Online]. Available: https://create.arduino.cc/projecthub/magesh-jayakumar/introduction-to-matlab- simulink-and-arduino-5a9396. [Accessed 28 October 2021].
  6. Electronic Cats, “Arduino MPU6050,” 10 October 2021. [Online]. Available: https://www.arduino.cc/reference/en/libraries/mpu6050/. [Accessed 9 December 2021].
  7. C. Hahn, “Code Generation: Run MATLAB Code and Simulink Models Anywhere!,” 2 January 2019. [Online]. Available: https://blogs.mathworks.com/student- lounge/2019/01/02/code-generation-online-tutorial/. [Accessed 29 October 2021].
  8. M. Schoeffler, “Tutorial: Gyroscope and Accelerometer (GY-521/MPU6050) with Arduino | UATS A&S #12,” 14 October 2017. [Online]. Available: https://www.youtube.com/watch?v=wTfSfhjhAU0&ab_channel=MichaelSchoeffler. [Accessed 9 December 2021].
  9. K. Elmalawany, “Arduino Tutorial Series,” 20 December 2020. [Online]. Available: https://www.youtube.com/watch?v=xOTb_chXzg4&list=PLlc7iryBA- XZve_sqD2hSdvOEHl3td33P&ab_channel=KhaledElmalawany. [Accessed 9 December 2021].
  10. K. Elmalawany, “MPU6050: Extracting Degrees of Rotation,” 4 Feb 2021. [Online]. Available: https://www.youtube.com/watch?v=D7WmrVNSCqE&ab_channel=KhaledElmalawany. [Accessed 9 December 2021]
  11. D. Zenkov, A. Bloch and J. Marsden, “Stabilization of the Unicycle with Rider,” in 38th IEEE Conference on Decision and Control, 2002.
  12. K. Do, “Bounded Controllers for Global Path Tracking Control of Unicycle-Type Mobile Robots,” in Robotics and Autonomous Systems, 2013.
  13. H. Jin, J. Hwang and J. Lee, “A Balancing Control Strategy for a One-Wheel Pendulum Robot Based on Dynamic Model Decomposition: Simulations and Experiments,” in IEEE/ASME Transactions on Mechatronics, 2011.
  14. M. Franke, J. Rudolph and F. Woittennek, “Motion Planning and Feedback Control of a Planar Robotic Unicycle Model,” in IFAC Proceedings Volumes, 2009.
  15. J. X. Xu, Z. Q. Guo and T. H. Lee, “Synthesized Design of a Fuzzy Logic Controller for an Underactuated Unicycle,” in Fuzzy Sets and Systems, 2012.
  16. S. I. Han and J. M. Lee, “Balancing and Velocity Control of a Unicycle Robot Based on the Dynamic Model,” in IEEE Transactions on Industrial Electronics, 2015.
  17. N. A. Aphiratsakun, “AU DIY-Unicycle Balancing and Riding System (AU DIY-UBRS),” 2018. [Online]. Available: https://www.matec- conferences.org/articles/matecconf/pdf/2018/25/matecconf_icmaa2018_02005.pdf. [Accessed 25 October 2021].
  18. J. Jiao, H. L. Trentelman and M. K. Camlibel, “Distributed Linear Quadratic Optimal Control: Compute Locally and Act Globally,” IEEE Control Systems Letters, vol. 4, no. 1, pp. 67-72, 11 June 2019.
  19. A. Owen-Hill, “Python vs C++ vs C# vs MATLAB: Which Robot Language is Best?,” 31 July 2018. [Online]. Available: https://robodk.com/blog/robot-programming-language/. [Accessed 20 September 2021].
  20. Simulink, “Simulink Support Package for Arduino Hardware,” 22 September 2021. [Online]. Available: https://www.mathworks.com/matlabcentral/fileexchange/40312- simulink-support-package-for-arduino-hardware. [Accessed 1 October 2021].
  21. Design World, “How to calculate DC motor torque based on supply voltage and speed: A Motion Control Classroom video,” 28 September 2021. [Online]. Available: https://www.youtube.com/watch?v=hgW1fH08cVc&ab_channel=DesignWorld. [Accessed 20 October 2021].
  22. FdeVries, “Moment Exchange Unicycle Robot,” 12 October 2018. [Online]. Available: https://www.youtube.com/watch?v=RqOYLWgq2QA. [Accessed 10 December 2021].