Go to Post "We've got more money than brains." - Travis Hoffman [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 29-11-2006, 06:09
rebekka rebekka is offline
Registered User
no team
 
Join Date: Nov 2006
Location: Germany
Posts: 1
rebekka is an unknown quantity at this point
Gyroscope ADXRS300 of Analog Devices

Hello all,

I’m working with the IMU 6DoF v2 of Sparkfun. It implies three Gyroscopes ADXRS300 of Analog Devices and three accelerometers. I have problems to calibrate the Gyros, because Sparkfun doesn’t post information how to calibrate them. The output of Gyro (all in ADC Values) is Rate Out, reference voltage 2.5V and temperature. The informations in the Data sheet of Analog Devices (http://www.analog.com/UploadedFiles/...s/ADXRS300.pdf) for the ADXRS300 are all @25°C. I don’t have access to a calibration labour. The only way for me to get the offset and the scale factor is to use a record player and the room temperature at 25°C (isn’t constant but better than nothing).
My first way was to get the temperature, but the Gyro is heating itself. My first problem is now, what is the temperature of 25°C in the data sheet? Is it the room temperature or the temperature of the Gyro? If it is the second, how can I get the ADC value for the temperature of the Gyro?
My second step was to get the offset of rate out in a static position @25°C. The offset is about 512.6 ADC.
My third step was to get the scale factor with the record player @25°C. With the record player I have two different angular rates with 33 1/3 revolutions per minute = 200 °/s and 45 rpm = 270°/s. I use the equations
200 = scaleFactor*(rateOut-512.6) and
270 = scaleFactor*(rateOut-512.6).
My problem is the both scale factors are different with 0.9004 °/s per ADC and 0.9388 °/s per ADC. Is the problem the inaccurate record player or it is possible that the scale factor isn’t linear to the angular rate?
I use the reference voltage 2.5V output to correct the Rate out with the factor=512/reference.
But how can I use the temperature output? I found in the sparkfun forum (http://www.sparkfun.com/cgi-bin/phpb...=asc&star t=0) for the ADXRS150 the equations:
Offset(@T) = offset(@T0) + 0.0086*(T-T0)+0.03597*(T-T0)^2
Scale factor(@T) = scale factor(@T0) + 1.26056*(T-T0) + 0.6728*(T-T0)
with T ADC temperature and T0 ADC Temperature @25°C.
But I don’t know is this quadratic relationship with this temperature coefficients also valid for the ADXRS300?

If somebody also works with the ADXRS300 and have information for the calibration of them, please contact me. I’m really happy about every information or help.

Thanks
Rebekka
  #2   Spotlight this post!  
Unread 06-12-2006, 01:46
Sparks333's Avatar
Sparks333 Sparks333 is offline
Robotics Engineer
AKA: Dane B.
FRC #1425 (Wilsonville Robotics)
Team Role: Alumni
 
Join Date: Feb 2004
Rookie Year: 2003
Location: Wilsonville, Oregon
Posts: 184
Sparks333 is a glorious beacon of lightSparks333 is a glorious beacon of lightSparks333 is a glorious beacon of lightSparks333 is a glorious beacon of lightSparks333 is a glorious beacon of lightSparks333 is a glorious beacon of light
Send a message via AIM to Sparks333
Re: Gyroscope ADXRS300 of Analog Devices

I worked with a lesser model of Analog Devices gyroscope. They aren't bad, but BGAs are evil to hand-solder.

The 25 degrees C is a point of reference for the temperature output. The datasheet says that at 298K (which is 25C), the voltage output on the temperature sensor is 2.50 volts. Useful if you're looking for ultra-precise measurement.

As for calibration, the gyro module itself has no calibration capabilities other than to offset the 2.5v reference voltage (I wouldn't recommend that). If you're getting discrepancies between the axes, then I'd say make sure the voltage on the reference line has no interference - put a large capacitor in parallel with ground, or put the device on an independent circuit. If all else fails, try to calculate an optimal scale factor for your circuit - iMEMs devices, as with all sensors, have slight differences inherent in manufacturing.

Good luck

Sparks

EDIT: Keep in mind that the scale factor for one gyroscope may not work for the others on that board. Also, looking at the datasheet shows you that the temperature has an effect on the output - about 8.4 mV/K - which could account for your discrepancy.
__________________
ICs do weird things when voltage is run out of spec.

I love to take things apart. The fact that they work better when I put them back together it just a bonus.

http://www.ravenblack.net/random/surreal.html

Last edited by Sparks333 : 06-12-2006 at 01:52.
  #3   Spotlight this post!  
Unread 07-12-2006, 12:36
TubaMorg TubaMorg is offline
Programmermechanicalelect ricalcoach
AKA: Dan
FRC #1480 (Robatos Locos)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2005
Location: Houston
Posts: 450
TubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond reputeTubaMorg has a reputation beyond repute
Re: Gyroscope ADXRS300 of Analog Devices

We used this gyro on our robot last year and it worked well for us. I have to say, though, that we didn't use an overly elaborate implementation. We just purchased the Evaluation board model and used it as is. As far as calibration went, we found the baseline for the robot at rest (1 second) then used that as a offset. As you noted though, as the gyro changes temperature, the baseline can change. We tried to make sure the temperture was stablized before going into competition. We also added a bit of code to reset the baseline when the robot is at rest (as determined by the operator). There are more sophisticated ways of accomplishing this, though. None of us are engineers, so we went with simple and expeditious. Analog devices has other information that might help you to. Check this out:

http://www.analog.com/en/prodRes/0,2...00_871,00.html

and for the Eval board:

http://www.analog.com/UploadedFiles/...XRS300EB_0.pdf
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Gyroscope Code Kevin Watson Programming 65 01-03-2008 23:46
Need help with Gyro = Analog Devices ADXRS150EB Jack Jones Technical Discussion 9 18-07-2005 07:00
Gyroscope Orentation Decay D.Viddy Programming 12 13-01-2003 14:43
control devices archiver 2000 5 23-06-2002 22:06
Drone devices?? MrsT General Forum 1 13-02-2002 21:59


All times are GMT -5. The time now is 17:38.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi