Introduction: Interactive Reflex Punching Bag
This instructable is for anyone who wants to improve their agility and boxing skills while getting more experience soldering, using Arduino, LED's and the MK 2125 Accelerometer.
The aim of this project is to modify an existing reflex bag and transform it into an interactive, gamified and more immersive product. The concept I created to achieve this involves embedding 4 LED's around the base of the bag, an MK 2125 accelerometer inside this base and then connecting these components to an Arduino UNO at the base of the stand.
- The MK2125 sensor provides tilt and acceleration data which is used to determine which way the bag is being hit.
The LED's Light up in a randomized cycle, which only iterates to the next LED when the bag is struck from the corresponding / glowing side. The idea behind this is to get the user moving around the bag as quickly as possible, striking it when they find the side with the glowing LED.
A traditional workout with a reflex bag is designed to improve punch accuracy and timing.
After building and testing this device it is clear the upgraded version builds upon its predecessor, by integrating the need for fast footwork / movement and sharpening the use of your visual reflexes. It has really made using the reflex bag 10x more fun too and It now feels like more of a game than an exercise!
I designed a sketch in processing (as shown in video + connected to this step) to visualize exactly how the randomized LED cycle will work, feel free to download it from the attached files and test it out yourself or just watch the preview clip.
To create this product you will need:
- 1x Reflex Bag
- 1x Arduino UNO
- 1x 9V Battery Pack (To power the Arduino)
- 1x Memsic MK 2125 Accelerometer
- 4x LED's (I have chosen Green)
- 4x 10ohm Resistors
- some sponge / foam to protect electronics
- 1 meter of 6 core wire
- 1 meter of 2 core wire
- roughly 28 jumper wires with pins
- lots of solder and a soldering station
- lots of heat-shrink tubing of assorted sizes
- DUCT Tape
- Super Glue
- Velcro (securing the wires loosely to the stand)
- Tupperware / waterproof container (housing the Arduino + battery pack)
Step 1: Embedding LED's and Sensor
The very first step is to drill 4 holes around the walls of the bag base to embed your LED's.
each one of these LED's should be connected to a ground wire on the - pin and a 10 ohm resistor on the + pin. you will want to duct tape or heat-shrink these connections and press them hard against the inside of the base, as it is important to make them as durable as possible.
Now you will need to connect jumper wires to these connections and feed them through holes in the bottom of the base as shown in the last picture of this step. Do the same for the MK 2125 sensor, you will also need to drill more holes in the bottom of the base to create space for the pins and connect jumper wires to these pins.
The important thing with the sensor is to fit it inside the base flat down and facing one of the LED's. This will be your FRONT LED which is useful later on for calibrating the sensor.
When all of these components are snug inside the base, you should be able to plug the jumped pins into your Arduino and test the code (TiltSense.ino) as shown in pic 5 of this step. If the code works fine and all the soldering is solid, fill the gaps with a bit of sponge / foam and tip a bit of superglue over the LED's to keep them locked in.
Step 2: Connecting the 6 and 2 Core Wires
In this step we will be extending the connections down from the base of the ball all the way down to the base of the stand with some 6 core and 2 core wires.
The ultimate goal here is to extend all the wires down from the top of the stand to the bottom of the stand, in the most convenient and durable way possible.
- 6 CORE
The way I decided to do this was to strip the 6 core wire slightly (shown in first picture) and:
- solder the LED's + Pins to 4/6 wires (these will plug into Arduino pins 10,11,12,13)
- solder the LED's - wires together and then to the - wire of the MK 2125 sensor to ground both the LED's and the sensor
- solder the + wire from the MK 2125 sensor and all of the connected - wires to 2/6 wires (These will plug into Arduino pins 5V and GND)
remember to use heat-shrink for all soldered connections to ensure the wires have a strong integrity and can handle dangling from the top bag base to the bottom stand base.
- 2 CORE
At this stage there should be 2 connections remaining which are the transmission wires from the MK 2125 sensor that will send the tilt data from the bag to the Arduino. This is how we will eventually determine which direction the bag is being hit.
- Solder the transmission wires to each of the 2 core wires (These will plug into Arduino pins 2 and 3)
Once you have successfully soldered all of these connections you will need to then solder the other end of these wires to some jumper wires with Arduino compatible pins (shown in the second + third picture).
Step 3: Testing the Upgraded Bag
I decided to secure all the connecting wires to the base stand with velcro to prevent them from moving around too much and damaging the soldered connections.The Arduino and 9V battery pack are housed within a tupperware container, which has also been connected to the base using velcro.
If you've come this far you should be ready and eager to test out your interactive reflex bag. Hope you enjoy this instructable, I plan on making upgrades to this project in the future since I am stoked with the outcome so stay tuned!.
I'm currently brainstorming ideas as to how I could create a point scoring or high score system for this device, if you think of any possible additions to this project please drop a comment or pm me.
Don't hesitate to ask any questions in the comment section, I will make sure to get back to you asap.
If you liked this, please vote for me in the Arduino or Make It Glow Contests. It would mean a lot, thanks!