Jigar 4 Electronics
Full Member level 5
- Joined
- Apr 28, 2011
- Messages
- 312
- Helped
- 40
- Reputation
- 82
- Reaction score
- 38
- Trophy points
- 1,318
- Location
- Hamilton, ON, Canada
- Activity points
- 3,368
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.