Arduino Project Suggestions - Measuring Angles Between Sensors

Dear all,

I'm currently doing a project in which I have to calculate the angles (and later the distance) between two sensors (see attachment), and I have no good idea on how to approach this. I have some experience with Arduino programming/software/hardware, but still consider myself to be a beginner (compared to the awesome projects on the interwebs).

My first objective for the project is to measure the side angle of patients dealing with neck problems, with two different sensors (see image). As it will be a wearable, I'm thinking about using a Lilypad Arduino, conductive thread, and different sensors (possibly IMU's http://www.adafruit.com/products/1714 as they will be pretty accurate and convenient, if I'm right).

Imagine that people can move their head forwards keeping their body still, thus, changing the angle their neck makes. I have to be able to measure and map the position of the neck (first only from the side, later maybe also from the back, to make sure the neck spine is held straight as well). But when the entire angle of the body moves, I still have to know the angle that the two sensors make.

So far, I've heard that flexible sensors could do the job (although they can be very inaccurate), but my best bet is on using IMU's (but they tend to drift over time, and need to be calibrated/reset).

What would be the best way to approach this project? What and how many sensors do I need in order to have accurate readings? Can it be done by using just one Lilypad? Are there any suggestions?

Thanks for your help!

Gr Crimson

IMUs cannot be used to accurately track positions; here is an explanation for why not: http://www.chrobotics.com/library/accel-position-velocity

An accelerometer can be used as a tilt meter (i.e. measure an angle with respect to "down") to an accuracy of 1-2 degrees, if properly calibrated. However, the person would have to be very still while the measurement is being made.

If you secure an accelerometer to the persons head and have them stand against a wall to steady them selves, that may give you a good enough baseline to determine which way gravity is, and then base all of your measurements off that to determine neck angle. I don't know if this will satisfy the accuracy you need however, if you even have a specific accuracy you need to meet.

In order to compensate for the angle of the body, you would need another accelerometer attached to the persons torso, maybe close to the base of the neck. You could then compare to two sensors to get the angle. Are you coming from a scientific/engineering background?

Thanks for your replies!

@d_vee, I had something like that in mind indeed. Good accuracy would be nice, but is not one of my main concerns right now. Concerning my background, I'm a student of Industrial Design in which we create interactive intelligent products for different domains, the current project I'm doing is for the Smart Health (rehabilitation) domain. I have basic understanding or arduino, programming, electronics, and that's why I'm looking for suggestions on how to approach this project.

Do you think it will be possible to use the different accelerometers (or IMU's), without using more than 1 microcontroller (arduino)? I've read about i2c busses that they use, and that the wearable Arduino's only have 1 i2c bus unfortunately.