IMU data visualization

A project log for OrthoSense

OrthoSense is a wearable multi-sensory knee sleeve to monitor the progression of Osteoarthritis.

Vignesh RavichandranVignesh Ravichandran 09/02/2017 at 08:160 Comments

An inertial measurement unit (IMU) is an electronic device that measures and reports a body's specific force, angular rate, and sometimes the magnetic field surrounding the body, using a combination of accelerometers and gyroscopes, sometimes also magnetometers. They are commonly used in mordern UAV's, Smartphones. 

• Accelerometers respond to gravity as well as to their acceleration, and it can be used to estimate the inclination of a body segment, body sway, or for measuring activity levels, however accelerometers have some limitations such as noisy signals. 

• Sensitivity improved through the use of a gyroscope through sensor fusion which also provides information on the rotational characteristics.

• In tandem they provide readings which can help determine context of the measurement (Walking vs Lifting foot, Running vs Climbing stairs vs Jumping)

• The BMC150 6DOF IMU is used for the initial prototype but the next revisions would move to the BNO055 9DOF IMU to increase functionality.

The Intel curie comes with the BMC150 IMU inbuilt which can help map the position of the knee. The recent capabilities have enabled the use of an IMU to determine the activity of the user to contextualize measurement.
This would help find out if the person is walking, resting, running or climbing stairs. I loaded up a small sketch to test the accelerometer and gyro and I was stunned with the performance of the sensor.  The Curie IMU library enables an Arduino or Genuino 101 to read the output of the on-board IMU (Inertial Measurement Unit) containing an accelerometer and a gyroscope and elaborate the raw data coming from it.

I tried doing some small activities and seeing the response and got this.