Both Neil and I are athletes and we wanted to build something to help measure performance in the gym. We noticed that most people only measure success by how much weight they can lift when really there are a lot of other important factors. We decided to hone in on the bench press exercise. We felt like explosiveness and form and two very important factors that should also be considered when benching, so we set out to build a device that measures these two factors.
What it does
The device measures acceleration and pressure while benching, both of which are used to help the lifter understand his/her acceleration and form. Acceleration is a good metric because when lifting the bar of your chest if you can do it quickly, this means you have high explosiveness. Pressure is good for letting the lifter know if they are touching their chest after each repetition. A lot of people when they get tired start compromising their form, but our device keeps the user honest.
How we built it
We built it using an Arduino Uno, a GY-521 module, and a pressure sensor. The GY-521 module is used as the accelerometer, the pressure sensor is used for pressure readings, and the Arduino Uno is our microcontroller that performs the analog to digital conversions and other computational tasks. Our electronics are housed in a box built for an Arduino. All of our electronics fit very well in the box and we then used a kind of velcro strap to secure the box to the barbell. We further used gorilla tape to make sure the device does not slide at all on the barbell so that it is completely secure. Lots of concepts went into building this device including ADC, interrupts, and Serial Communication.
Challenges we ran into
One big problem with our device is that it is not wireless, it needs to be attached to a computer in order to see the output. This is not what we intended. We spent hours upon hours trying to make our device wifi compatible to display data to a webpage, however, we realized too late that the wifi shield we were trying to use was not compatible with Arduino Uno. Unfortunately, we were not able to change directions quickly enough, but it did teach us a lot about sourcing parts in the future and the importance of reading the datasheets for parts thoroughly.
Accomplishments that we're proud of
Despite the setback we had with the Wifi, we are proud of the fact that we were able to put a minimally viable product on display. A lot of times in the workforce it may be the case that you are not able to reach your fully desirable product, but there are deadlines to meet and ultimately you have to put something out there. We were able to do that and this is a skill for sure. Other than this, we are proud to have put our engineering skills to work towards something that we were both passionate about and we really believe this product has potential.
What we learned
A lot of concepts from the semester were reinforced such as ADC, interrupts, and Serial Communication. We also learned a lot about wifi despite not being able to get it to work. Finally, we learned the challenges of building your own embedded device and all the factors that go into such devices.
What's next for Power Bench
To conclude, we would like to discuss some next steps for a project like this. Once you collect enough data for a particular lifter, you can start thinking about using some data analytics or potentially even machine learning to come up with personalized training plans for people. These training plans will be unique compared to others since they focus on metrics that are more targeted and specific. Also, another idea we had in mind was a safety system. Potentially, the data from the device could be relayed to a central gym system. Let’s say that a particular lifter’s acceleration level is starting to decrease rapidly or even go negative. This means they are no longer able to push the weight of their chest in which case they should stop lifting. This kind of safety system could be useful to help avoid gym accidents.