Overall, things performed as planned during our final project. Our team met the goals outlined final project proposal and made a fun target-attacking robot! We successfully demonstrated the functioning robot to the professor and the TAs during the final demo session.



We made efficient use of our time during the 5-week period we had, and made good progress each week. The status reports of each week is summarized in the table below:

Week Progress Problem Faced
Planning Week - Researched on potential project topics, and narrowed down the choices
- Developed detailed project proposal and schedule
Week 1 - Tested toy nerf gun
- Researched for target identifying algorithm using OpenCV, and found contour method
- Needed quite large power to trigger the nerf gun, which the standard servo was unable to provide
- Problems with OpenCV installation
Week 2 - Installed OpenCV without “make”
- Switched to using mousetrap for the ball launcher
- Developed two models of the ball launcher, one with a handle and major modifications, and the other much simpler
- Tested camera and contour method
- Needed to figure out how to place every component onto the robot due to limited space
- Ping pong did not work well as it bounced too high
Week 3 - Connected and tested standard servo with mousetrap
- Made paper balls of appropriate size and weight
- Assembled entire robot system
- Developed the script for main program
- Difficult to use electrical wire as the “mousetrap trigger string”
Week 4 - Made software interface more visually appealing
- Added music
- Integration testing
- Discovered template matching method for target identification - incorporated it into manual mode


Problems Encountered


One of the problem we encountered is safety concerns, as we planned to use a toy BB gun in our project proposal. However, after consulting with the professor, we eventually decided to use the mousetrap as the base of the ball launcher and paper balls instead of “bullets”. Though we still had to be extremely careful while testing the mousetrap, but the speed and the texture of the paper ball is not harmful to people.

Another problem we had to deal with is the level of interference coming from the surrounding environment while the robot is searching for target. Our solution involves using white foam boards to cover up the part of the wall that the camera can “see” and increasing the threshold from the software perspective.

The issues we faced while trying to increase the firing accuracy are trying to keep the robot to move in a straight line and to ensure the paper ball is always launched at a certain range of heights. The details on solving these two problems are described in the Testing section. In a word, to make the robot move in a straight line, the two wheels need to be attached more firmly to the body of the robot and the batteries need to be fresh. To maintain the paper ball launching height, it needs to be placed a certain distance away from the center. This part is somewhat subjective, but we found that for the purpose of our application, this method works fine as the target “Tom” face is relatively large.

©2017 Mei Yang, Lisa (Jia Lin) Zhu
Layout ©Cornell University