Songting’s Status Report 11/22

This week, I focused on adding more exciting features to the game. After exploring multiple options, I implemented a feature where a random target is generated within a certain range on the map. Players need to hit this target to earn points. The game won’t end simply when the disk falls to the ground; instead, a new target will be generated, allowing players to continue trying to hit it. The game’s ending logic requires players to reach a certain point threshold to win.

I believe I’m on the right track! Next week, I plan to enhance the scoring system further and make the game even more enjoyable.

Alex’s Status Report 11/22

This week we were able to get the wifi connection working from the arduino to Michael’s computer and are now able to use a battery, although not the battery we are planning on using, to power the arduino. I am now working on sending data from my computer to Michael’s but I have not found the best method for actually sending the data. I also attached the wrist strap to the frisbee and tested it out. Our testing ended up breaking the wrist strap so we have purchased a new one in hopes that it will work better.

Next week, I will be able to send data to Michael’s computer that way he has all of the data he needs for the flight of the frisbee. Additionally, I hope to complete our testing on the way the frisbee flies.

Alex’s Status Report 11/15

This week I set up all of the calculations for the CV and started to set up the connection from the arduino to the computer using wifi. I was having a bit of trouble because of the issues with using the CMU wifi so I am trying it with my phone hotspot and it is making more progress. Additionally, we worked on setting up for our project interim demos that happened this week.

Next week I hope to have the wifi working and to work on connection my computer’s to Michael’s that way he has all of the data he needs to calculate the flight of the disc.

 

Alex’s Status Report 11/8

This week I looked into other computer vision models because the open pose model was not fast enough for our project. I found a new model called mediapipe and tested it out. It is able to capture the human figure much more efficiently and there is less lag on the display. This is beneficial as when we send the data from my computer to Michael’s it will be more on time.

Next week I hope to set up the data points we are trying to measure using the CV. This means calculating the distance between the person and the disc and their height in case we do not use the tof sensor. 

Songting’s Status Report for 11/15

This week, I have been focusing on adding more input parameters to the Unity game. Specifically, Unity now supports an initial launch angle, tilt, and other rotational information from the sensor. To facilitate this, I have enhanced the DPU to calculate the launch angle and to directly receive the rotational properties from the Arduino. Additionally, the launching direction has been adjusted to align with the rotational angle.

I believe I am making good progress in development. Next week, I will work on integrating and fine-tuning the system with the real sensors, as well as improving the in-game physics model to account for the aerodynamics associated with different tilts.

Songting’s Status Report for 11/8

This week, I made significant progress on the Unity Engine and the DPU. For the Unity Engine, I finalized the physics model based on an MIT paper on the physics of Frisbees. I incorporated their drag and lift force equations into the game. Additionally, I created a game scene featuring a central island with trees, woods, and bushes, all surrounded by water and mountains.

Furthermore, I implemented an initial version of the DPU that receives data from the Arduino sensor and calculates the initial velocity, tilt, and launch angle from the input values. This information is then sent to the Unity game. With the current system, players can throw the board with the sensors, and the trajectory will be automatically simulated in the game.

I believe we are on track and ready for the demo next week. However, there are still many details to address. The DPU currently needs to support a Bluetooth connection instead of a cable connection. Additionally, I need to enhance the integration of the sensors to obtain accurate measurements of throw direction, height, initial tilt, and launch angle.

Frances’ Status Report for 11/1

This week, I was able to successfully get data communication between the Arduino Nano ESP32 that arrived and the IMU. I wrote some test Arduino code that just printed the acceleration and the angle of tilt, and I successfully used SPI communication protocol to transfer the data between the sensor and the computer. Next week, I will get the ToF sensor working, and have the Arduino able to communicate with both sensors.

Successful printing of IMU data values
SPI wiring between IMU and Arduino Nano

Songting’s Status Report for 11/1

This week, I continued my work on the physics code for the Unity Engine. I read additional papers on frisbee and disk physics. However, I am still encountering difficulties in perfecting the physics behavior of the more complex mesh of the frisbee.

I am slightly behind schedule due to my travels this week, but I plan to start working on the DPU next week. Hopefully, I will be able to process the data into a format that Unity can use.

Alex Status Report 11/1

This week on Monday we had the ethics section and I also worked on the ethics homework. Additionally we chatted as a group about the ethics of our project. I also found a better body tracking software is now working and has a much higher frame rate.

Next week, I hope to have all of the arudino code working and the ability to send the data from the arduino to the computer and take inputs into unity.

Songting’s Status Report for 10/15

This week, I have been focused on improving the Unity game physics model. I successfully made changes to achieve partially correct behavior in the physics system for the more complex frisbee physics mesh. Although there are still some flaws, I believe they will be relatively easy to fix.

During our meeting with the instructors and TAs on Thursday, we discussed the possibility of using a simple cylinder mesh for the disk instead of a more complex model. We also talked about benchmarking steps we could implement to verify our system, rather than relying solely on user ratings of their experience. I think a valid approach would be to actually throw a Frisbee and gather data from the sensors, then compare those sensor readings with the simulation data.

Next week, I will be traveling, but I plan to continue working on the Unity aspects and think through how we can write the Python data processing unit. Overall, I feel that I am on track with the entire process.