Team Status Report for 4/25

This week, we finished a rough full system integration. We exposed some faults that needed addressing, such as gantry pitch decoupling and audio bugs. We explored adding two axes to the gantry, improved the robustness of wiring connections, and are working to tie up any other loose ends to create a robust system for public demos.

As for our unit tests, we conducted the following:

1. Bat Swing -> Servo Actuation. Actuated servo based on different measured swing speeds. Adjusted base level measured on on our own strengths, made room for it to be adjustable.

2. Bat Swing Strength. Measured the servo’s torque, the bat’s strength, and the swing power (ball distance traveled).

3. Scoring Detection. Measured detection (trigger/no trigger) for each pocket, revised pocket design. Measured correct base state changes for each scoring type with different runners on base. Created routing scheme for balls to route to bottom of board.

4. Pitch Coupling and Decoupling. Coupling was tested by dragging our magnets under our surface by hand, with the ball coupled on top, we can test how strong the connection is between the magnet and the ball. This was important as it informed how strong to size our magnet. If our magnet didn’t couple well enough, we wouldn’t be able to produce fast and variable pitch movements (like a start-stop pitch, which requires high acceleration). But we also needed the ball to be able to decouple relatively easily. We tested this with the flick of our fingers on the same setup. If we could flick the ball off the magnet coupling, we were sure that the real flipper could do the same easily. This informed an upper bound for our magnet strength, since if the magnet was too strong, we wouldn’t be able to decouple it or hit the ball cleanly.

5. Pitch Speed. This was tested by sweeping parameters of the gantry control software, FluidNC. It has a steps_per_mm and acceleration parameter, and we pushed it until we noticed motor whirring or extreme vibration. We were satisfied with the speed we were able to achieve. We were able to get up to ~250 mm/s for velocity. This was below our original target, but the eye test suggests that our original target was way higher than necessary, and that these speeds suffice.

 

To test the full system, we ran through full game cycles of pitch -> hit -> score (-> pitch). The full system testing revealed some flaws, such as the aforementioned gantry pitch decoupling and audio bugs, as well as issues such as the ball getting stuck on wires below the table. This informed us on what needed revision this week to make our game a complete, fun playing experience.

Bing’s Status Report for 4/25

What did I accomplish this week?

This week I finished implementing the scoreboard and experimented with the solenoid for the Z-drop mechanism. I also helped out my teammates with miscellaneous tasks.

Am I on schedule or behind?

I am a little behind schedule to get our project up and working by Wednesday.

What do I hope to complete in the upcoming week?

I hope to help my team finish up the project, final poster, and final report; in addition to presenting a good demo, of course.

Aiden’s Status Report for 4/25

What did I accomplish?

I built another linear axis for the pitch gantry and achieved simultaneous 2-axis movement, and hypothesized different solutions to frame it. I decided that, given the spatial constraints and minimal time left, the XY gantry was unfeasible. I instead developed and sourced components for another gantry enhancement — the retractable Z magnet. I also iterated on the gantry control with Bing to enable variable pitch speed and a button interface.

 

Am I on schedule or behind?

I’m behind schedule. I hoped we would have had more time fully integrated and testing at this point.

 

What do I hope to complete in the next week?

Everything. I hope to produce a system that is robust, skill-based, engaging, aesthetically pleasing, and, most importantly, fun.

Vivian’s Status Report 4/25

This week I wrapped up the acrylic board paining and finalized the finished surface. I also fixed the servo bugs with wiring issues on the breadboard and ordered backup components in case certain things fail in the next week during testing. Overall, the system is fully integrated on my end with the pockets, servo, and audio, keypad, LCD screen.

Next week I plan on ironing out a few minor bugs with the game state. There are a few errors that occur where the ball gets stuck in a weird state or the reset button does not work properly. I also want to finazlize the wiring to make it robust and stable.

Aiden’s Status Report for 4/18

 

What did I accomplish?

I framed the gantry into our wooden game board, I mounted a magnet to it, I designed and cut the housing for our scoreboard, and I iterated previous pocket designs and printed them all.

 

Am I on schedule or behind?

I feel a bit behind schedule, as we haven’t gotten around to testing as much as I would’ve liked, and tomorrow is our last push for complete integration.

 

What do I hope to complete in the next week?

I hope to finish the full integration, clean up any hacked-together solutions, and improve the robustness of fabrication. After that, I will begin working on two-axis gantry movement, as it’s currently confined to 1 axis.


As you’ve designed, implemented and debugged your project, what new tools or new knowledge did you find it necessary to learn to be able to accomplish these tasks? What learning strategies did you use to acquire this new knowledge?

Given how mechanically complex my project is, I have had to spend many hours using Fusion 360, a CAD software, to model my design. Then, I have spent time 3D printing, woodworking, and machining to make my model a reality. For CAD and 3D printing, I used LLMs and YouTube tutorials to learn how to design and debug. For woodworking and machining, I consulted the experts and TechSpark routinely, from high-level overviews to assess feasibility, to double-checking specific implementation details.

Team Status Report for 4/18

This week we made significant progress towards the final goal for the project. We had a productive meeting with the professor to brainstorm and finalize details for the final product, and met as a team throughout the week to integrate our subsystems and conduct verification. As of now, we are working on finishing the the wirings, gantry system, and scoreboard. We are also working together to finish the slides for the final presentation in this upcoming week.

Bing’s Status Report For 4/18

What did I accomplish this week?

I implemented the game scoreboard, experimented with the gantry and the GPIO expander, and cleaned up the bat wiring this week. I am meeting up with my team over the weekend to prepare for our final presentation in this upcoming week.

Am I on schedule or behind?

I ran into a little road block with the seven segment display as I accidently fried the board, which took a while to replace, so I am slightly more behind than where I would like to be.

What do I hope to complete in the upcoming week?

I hope to finish assembling the scoreboard and help my team out wherever help is needed in order to finish the final builds of our project.

Throughout this semester, I’ve learned most about project planning and keeping myself accountable to my own set goals. Unlike most other classes that I’ve taken in college, I get to (relatively) set my own deadlines for features and functions for my project, in which I am only held accountable by myself, my teammates, and intermittent deadlines. As much as I have forethought about this, actually being in the situation definitely still requires commitment and discipline, which is always useful to practice. Apart from that, I also learned how to do wireless communication between microcontrollers.

Vivian’s Status Report 4/18

This week, I put together and wired up all the breakbeams onto the final board using extended male to female wires and nuts + bolts. I also implemented the game board audio using a DFAudio player and microSD card and wired up the GPIO extender board as well. In addition, I painted the scoreboard using spray paint. I also revised the code to refelect each of the tested components and made a pin-out for every component.

For the next week, I want to focus on system wide integration. I would like to be a bit more ahead on it as of now.  I ordered the stickers and more paint to finish the surface completely, and am looking into possibly ordering a new servo to support different speeds.

During this project I mostly learned things that don’t really come up as much in class, like how to actually integrate a bunch of hardware together and deal with real-world issues. For example, working with the GPIO expander, handling multiple protocols at once (UART/I2C), and figuring out power/grounding problems were all new. I also got more comfortable debugging when things don’t work cleanly, like sensor noise or weird timing issues. I mainly learned by just testing things in small pieces first and then combining them, and using serial prints and basic tools to figure out what was going wrong. I also learned a lot about project planning and integration– especially when parts don’t work as expected or do not have well defined data sheets.

Bing’s Status Report for 4/4

What did I accomplish this week?

This week, I helped the team present our project during our interim demos. We managed to get a lot of the kinks worked out with integration and the demos went quite well. I also started programming the scoring system.

Am I on schedule or behind?

I am currently on schedule.

What do I hope to complete in the upcoming week?

I hope to finish the code for a scoring system and demo it to the team on Monday. I will be looking into ways to materialize the program into a physical scoreboard.

In regards to updates in testing and verification, I have conducted qualitative tests for the swing detection and unit testing for the scoring system. The tests for swing detection should remain similar to what was outlined in the design document. The scoring system has been updated a fair bit, where now we will have a representation of runners on base, so there will have to be thorough testing of the possible states of the game in software; once the scoring system has been integrated with the rest of the game, the tests will have to be done in hardware as well.

Team Status Report 4/4

This week, our team made progress on both implementation and overall system design. We got the paddle working for both demos. We also designed the scoreboard and game logic, and also refined the under-game system that will support score detection and ball handling underneath the board.  Instead of the current cups being attached to the board, we are printing out cup holders which attach to the breakbeam holders to make the system more stable. We also ordered additional breakbeam sensors and GPIO expanders so we can add the scoreboard communication along with audio.

The biggest risks right now are integration and user testing. Even if each subsystem works on its own, the project could still run into problems if the paddle, scoring sensors, and scoreboard do not work smoothly together. We are managing this by unit testing and integrating parts together one at a time. A contingency plan is to simplify parts of the scoring layout or under-board design if needed so that the core gameplay works reliably first. For the suer testing, we need the whole system to be integrated and conduct many run throughs to properly tune the game for a good playing experience. For example, if the bat is too sensitive, it can trigger unecessarily. Another example could be if it is too hard to score a point, making the game les fun to play.

As a team, we will verify that each part of the system is working the way we intended before focusing on full gameplay. This means checking that the paddle swings when triggered, the breakbeams correctly detect the ball in each scoring hole, the scoreboard displays the right score, and the under-game system reliably routes the ball for detection. We will do this through repeated testing and by comparing the measured results to what we expect from the design.

The main design changes this week were refinements to the scoreboard logic and under-game system. We already had general ideas, but we now have a solid plan for integration and the parts are ordered. Going forward, we plan to continue integration, refine the under-board system, and test complete gameplay more thoroughly.