BALL & PLATE ROBOT
Overview
During the Summer of 2019 I flew to Barcelona to work in the Institut de Robotica i Informatica Industrial. It was my very first time in Europe and I was not only completely amazed by the city, but also by all the professors and students working in the lab. They taught me new ways of looking at problems to come up with creative solutions.
The project I was working on was the design of a parallel robot for the ball-in-plate problem. The end goal was to build a fully operational ball-and-plate system that would be able to balance a small ball on a moving platform. During the internship, I was able to:
-
Finish mastering SolidWorks
-
Learn about vision and control
-
3D print
-
Study non-symmetric structures and why they are important in the development of parallel robots (to increase stabilization). In addition, I used my MATLAB knowledge to program the motors.
Designing
Probably, the most challenging part of this project was the beginning. I must admit that I was scared because I didn't know if I would be able to achieve the desired outcome. However, I put a lot of effort into learning more about SolidWorks and took the official online courses in order to master it. In addition, I also allotted some time to read a variety of papers about kinetostatic analysis, control, and how to predict the position error of the center of the ball in order to correct it. The following is a paper written by previous students in the lab which helped me a lot to analyze and implement a 6-RSS parallel robot for the stabilization of a ballon on a moving plane:
http://www.iri.upc.edu/people/ros/Separates/n5-jornadas-gijon.pdf
I am very grateful for having had such an incredible supervisor who not only encouraged me to explore and ask questions but also taught me how hard work can let you achieve previously unthinkable things. In order to track the ball, I installed a camera on top of the robot, calibrate it (real distance with digital pixels), set the axis of the camera so that it would coincide with the axis of rotation of the robot, and try two different methods of finding a circle. In the end, I ended up choosing the method in which I first had to turn the image to binary and use the surrounding pixels and previously set parameters to "guess" the circle in the plane.
Results
After two months of hard work and a lot of learning I FINALLY made this. Enjoy!!!!!!!!! One of the most rewarding moments of my life.