Jigar4Electronics

03-17-2013, 06:07 AM

Hello All,

I am making an IMU for 6DOF which has L3G4200D 3-Axis Digital Gyroscope.

I've checked so many Blogs, Forums, Application notes and have programmed accordingly to get the proper reading/information from my gyro.

Though I am very near to solve it - a single problem has made me mad since last two nights!

I've 16 bit digit - 1 signed bit + 15 bit value

Suppose I want to measure an angle with respect to X-axis at 2000 dps, for that I am doing the following:

X = X*70/1000; // X is of type int & having the 16bit value in it

Print(X); // to print X on UART

I am getting some values most probably <800 when I move gyro in counter clock direction with respect to X-axis and getting >4000 for the opposite direction!!

I want to have positive angle values while rotating it on counter clockwise direction and negative angle values for the clock wise direction... For that what I should add on my calculations?? [Angles should be in degrees 1 to 180 & (-1) to (-180)]

// in code 0.007 is in mdps which is the value of each LSB of gyro's data

What I should add in could and why I am having >4000 & <800 values right now?

Could anyone please help me with this?

Thank you so much for your valuable time.

I am making an IMU for 6DOF which has L3G4200D 3-Axis Digital Gyroscope.

I've checked so many Blogs, Forums, Application notes and have programmed accordingly to get the proper reading/information from my gyro.

Though I am very near to solve it - a single problem has made me mad since last two nights!

I've 16 bit digit - 1 signed bit + 15 bit value

Suppose I want to measure an angle with respect to X-axis at 2000 dps, for that I am doing the following:

X = X*70/1000; // X is of type int & having the 16bit value in it

Print(X); // to print X on UART

I am getting some values most probably <800 when I move gyro in counter clock direction with respect to X-axis and getting >4000 for the opposite direction!!

I want to have positive angle values while rotating it on counter clockwise direction and negative angle values for the clock wise direction... For that what I should add on my calculations?? [Angles should be in degrees 1 to 180 & (-1) to (-180)]

// in code 0.007 is in mdps which is the value of each LSB of gyro's data

What I should add in could and why I am having >4000 & <800 values right now?

Could anyone please help me with this?

Thank you so much for your valuable time.