Sensors Packed in the Punch
Learn how these two Boston University graduate students built a gesture-detection wearable that acts as a building block for a larger fitness telemetry system. Using a Linux-based Gumstix Verdex, the wearable couples an inertial measurement unit with a pressure sensor embedded in a boxing glove.
By Blade Olson and Patrick Dillon
Diagnostic monitoring of physical activity is growing in demand for physical therapists, entertainment technologists, sports trainers and for postoperative monitoring with surgeons . In response to the need for a low-cost, low-profile, versatile, extensible, wearable activity sensor, the Hit-Rec boxing sensor is a proof-of-concept device that demonstrates on-board gesture recognition and high-throughput data monitoring are possible on a wearable sensor that can withstand violent impacts. The Hit-Rec’s ability to gather raw sensor values and run calculations at a high frame rate make the Hit-Rec an ideal diagnostic device for physical therapists searching for slight perturbations across a user’s gestures in a single recording session or for looking at discrepancies between the ideal motions of a healthy individual and the user’s current motions. The following sections will describe the implementation of a prototype for the Hit-Rec using a boxing glove (See Lead Photo Above).
The Hit-Rec sensor incorporates a Gumstix Verdex Pro running Linux, a 9-DoF (degree of freedom) inertial measurement unit (IMU), a pressure sensor that is connected to the Gumstix via a 12-bit analog-to-digital converter (ADC) and LEDs for user feedback. The ADC and IMU both communicate over I2C. The LEDs communicate to the Gumstix through general purpose input/output (GPIO). Figure 1 shows a high-level explanation of hardware interfaces and Figure 2 provides an illustration of the system overview. All software was written in C and runs exclusively on the Gumstix Verdex Pro. A Linux kernel module was written to interact with the LEDs from the user-space program that performs data capture and analysis. IMU data was smoothed and corrected in real-time with an open-source attitude and heading reference system (AHRS) provided by Mahony . A circular buffer queue was used to store and retrieve sensor data for recording and analysis. Punch classification compares accelerometer values at each data point and chooses the gesture with smallest discrepancy.
Each of three LEDs on the Hit-Rec glove represents a different gesture type. After the “punchomatic” program is started, the user is prompted to record three gestures by way of three flashing LEDs. In the background, IMU data is continuously being recorded. The first, yellow LED flashes until an impact is registered, at which point the last 50 frames of IMU data are used as the “fingerprint“ for the gesture. This gesture fingerprint is stored for the rest of the session. Two additional gestures are recorded in an identical manner using the red and blue LEDs for the subsequent punches. After three gestures have been recorded, the user can punch in any form and the Hit-Rec will classify the new punch according to the three recently recorded punch gestures. Feedback on the most closely related punch is presented by lighting up the corresponding LED of the originally recorded gesture when a new punch occurs.
We used the Adafruit LSM9DS0 with breakout board as an IMU sensor and a force-sensitive resistor (FSR) from Adafruit as a pressure sensor. Both sensors communicate over I2C, which the pressure sensor achieves through an ADC. …
Read the full article in the June 335 issue of Circuit Cellar
Don’t miss out on upcoming issues of Circuit Cellar. Subscribe today!