BilliardBot
BilliardBot is a pool-playing robot that uses computer vision for ball detection and navigation. when properly positioned, it strikes the cue ball with a solenoid powered kicker.
![](https://www.geediy.net/wp-content/uploads/2024/07/image-88-1024x571.png)
![](https://www.geediy.net/wp-content/uploads/2024/07/image-87.png)
![](https://www.geediy.net/wp-content/uploads/2024/07/image-89.png)
![](https://www.geediy.net/wp-content/uploads/2024/07/image-91.png)
Project description
Sample:
Visit my website for more info:undefined $
High level overview
![](https://www.geediy.net/wp-content/uploads/2024/07/image-92.png)
OpenCV analyses overhead camera feed for tracking the ball and robot, as well as for calculating distances and trajectories on the pool table.
Software sends commands to ESP32 over Wi-Fi, directing robot to maneuver to set coordinates via omniwheels.
Upon reaching the target position and orientation, the robot charges and discharges its capacitors powering a solenoid to strike the cue ball along the intended path.
Robot:
![](https://projects.arduinocontent.cc/aedf751e-3ff5-4a42-a404-01cc396edfd5.jpg)
Phys simulation
![](https://projects.arduinocontent.cc/3400806f-a420-41f5-8e41-132547aab607.gif)
GUI
![](https://projects.arduinocontent.cc/e75465ed-6e47-4d05-9d67-55bc5975cbdd.jpg)
Code
BilliardBot
Codebase
Documentation
Project’s website
Has all the steps for the project
BilliardBot (rachad47.github.io)