top of page

As shown in the results, we could successfully hit a ball to the target, which was our goal for this project. We had several trials and confirmed that the robot is able to hit the target repeatedly with an accuracy of more than 60%. If we developed a paddle at the contact point, then the accuracy would increase. However, there are still large room to improve accuracy. In our experiments, we used relatively large object as the target (the object’s radius is about 20[cm]). We checked whether the ball hit the target or not, but we could not confirm the actual height the ball reached in the end. We assume that the actual height was not precisely controlled. Through more experiments, we could update our lookupt table with more relations between the timing to drop the ball and the height the ball will reach in the end.

 

There are a variety of problems when we encountered while working on this project. The biggest problem in hardware was that we could not actuate motors as we desired. At the beginning, we tried to control the distance (horizontal distance) of a ball after batting instead of the height (vertical distance). Although we tried several configurations (e.g. hitting like tennis serve) to increase a velocity at a contact point, but they did not work well. In the end, we noticed that the angular velocity of the motor might be saturated. We learned that it is important to know the specification and characteristics of hardware to meet our objective. The biggest problem in software is to control robot arm to hit a ball to the appropriate height. We did simulation with basic dynamics to estimate the height, but we found that the simulation results did not fit to the actual measurement results. Therefore, we tried to achieve our goal through some trial & error. It was a good experience to learn that theory does not always match reality.

 

 

As we mentioned, we built a lookupt table which maps batting plans to the height the ball will reach in the end. In this project, we use lots of trial and error, however, if we could remodel our impact dynamics in order to improve our simulation's accuracy we would scrap the lookupt table and do runtime solving. On the other hand, it may be interesting to make robot learn how to hit a ball precisely by applying reinforcement learning programming to the robot.

Conclusion

bottom of page