Automatic Ping Pong Collector

HOTeddy:
I am thinking of adapting a cylindrical roller concept to collect the balls. If the method works, the collecting of balls is done passively, the only challenge is to identify location of balls.

Please refer to link for the roller example.

https://www.youtube.com/watch?v=rzyyGr7goKM

Please give advise whether it is feasible.

By following a specific path, the collection rate may not be 100%. But since its my first project, achieving above 80% is good enough for me.

I am aware that Arduino is capable of obstacle avoidance, however, can I make it approach an object with a specific width instead?

Here is my concept of object finding.

For example, it wont approach the fence enclosing the area as the ultrasonic sensor senses that it is an object of width larger than 3cm, it will reverse and go another direction. By this way, it will always travel randomly in the enclosed area. When it sense a 3cm object (pingpong ball) it will approach it, collect and then sense the surrounding again.

So to sum it up, the machine will go another direction when ultrasonic sensor senses object is greater than 3cm and will approach it if it is less than 3cm.

The project can be conducted in a controlled environment. A flat enclosed surface with ping pong balls.

Is the floor color going to be constant, with high contrast to the pingpong balls?

The video you're linking to says:

GMB is a robot tennis ball collector, designed by 6 senior mechanical engineering students in Middle East Technical University in Spring '12.

GMB Features:

  • 50 Ball Collecting Capacity
  • Unloading Mechanism up to 50 cm
  • Radio Frequency Control
  • High Maneuverability

It took 6 senior mechanical engineering students to design a ball picker that's RADIO CONTROLLED.

I am not trying to underestimate you, but... This is not easy.

Well, but if I were to do it:

I'd use a mobile phone for the pingpong ball detection. I'd ensure the robot can turn on a spot. I'd connect the phone to an ESP8266.

I have recently bought about 10 phones for $10 each, they run Android. Watch out on Ebay, you might be able to get a similar deal. They are usually bound to an operator that has quit and can't be used to make calls. Still work perfectly fine for robot control...

For the robot, I'd use servos hacked for continuous rotation. I'd then get a ball mouse and hack it into a cheap optical rotary encoder. This should keep the price of your robot under 100 bucks. Alternatively, you might be able to get slightly worn LEGO parts and attach them to a metal or a wooden frame.

Just keep in mind Android programming is... How to put it. You could say it's not really beginner friendly; you could also say it's not a good idea to wear shorts on Antarctica.