Team Status Report 5/1

This week we had a really big week of integration. We finalized the launcher, fabricated the final mechanism, placed electronics in the housing, integrated with the nano by finalizing the serial communication code, and began testing and calibration of the system. We spent many hours in techspark iterating on the launcher, landing on a design with a servo that gave us really good consistency in direction, with a little bit of variation left in distance to iron out still. The servo also allowed us to integrate our reloading mechanism.

Coming up this week is more calibration of launcher power delivery, and testing the robot in different lighting and table setups, as well as user testing against ourselves to see if we are able to play a full game.

 

Logan Weekly Status Report (5/1)

This week JP and I did most of our work together in TechSpark. We went through 5-6 different versions of the loading mechanism for the launcher, starting from a ramp, and ending up with a small mechanism that uses a servo to push the ball into the spinning motors.

One thing that we noticed right away was that the long distance between the point the ball starts and the motors introduced a lot of inconsistency in both the direction and the power of the launch. We addressed this by moving the servo closer to the motors so we could precisely control the speed that the ball enters the motors as well.

The other big development of the week is I assembled the final launcher mechanism and placed it in the housing. There was a lot of troubleshooting we had to do to get the serial communication figured out between the nano and the arduino but we left techspark Friday in a really good place; we had the cup detection measure the distance to a cup we placed at an angle away from the robot, then it sent the angle and distance to the Arduino, which initiated the launch sequence, turning the launcher towards the cup, and shooting the ball at the correct distance to land in the cup.

Juan Pablo Weekly Status Report 5/1/2021

This week I added more concrete states to the game flow that not only instruct the user through the turns, but also prevents them from clicking something when they’re not supposed to or triggering a second shot too early. When the user presses shoot, a sequence of pop-ups will walk them through the process. Examples below include shooting information, waiting for opponent’s turn and prompting removal of cups, and rescanning cups.

This week I’m going to finish integrating my part with the ellipse detection and calibration by properly calling and testing the aim function and ensuring a correct relationship between the cups displayed and the cup scanning between turns.