|
|
View previous topic :: View next topic |
Author |
Message |
AlternativeSearch
Joined: 28 May 2012 Posts: 2
|
Converting the output value of AD7711 to resistance/temp |
Posted: Mon May 28, 2012 5:05 pm |
|
|
Hello All,
I am new to the forum. I hope someone can guide me. I wrote a device driver for the AD7711 ADC to measure the voltage across a PT100 connected to it. I have turned on the excitation current and I do get valid data from the output registers (I say valid because when I touch the PT100 I can see that the output values do increase in the last 4-8 bits of the 24 bit word and vice versa when I remove my hand).
I am confused about the Filter settings and also the gain settings - what should these be for a PT100 operating between possible 0C-100C? (currently using something like 1xF4 for the filers and gain at 2).
Also, I am really stuck on computing the actual temperature from the value output by the ADC and I am desperate for help. I have been spending about a week trying to figure this out - any help greatly appreciated.
Thanks,
Warm Regards,
A. |
|
|
Mike Walne
Joined: 19 Feb 2004 Posts: 1785 Location: Boston Spa UK
|
|
Posted: Tue May 29, 2012 2:56 am |
|
|
It's all in the data sheets. You've presumably read them for both your PT100 and the AD7711.
All PT100s behave in a similar way.
They're manufactured to have resistance of 100R at 0C, same as 273K (kelvin).
Their resistance is ROUGHLY proporional to absolute temperature.
So, at 100C the resistance will be 100 * 373/273 i.e. ~137R.
(You'll need to confirm with the data sheet for your device.)
You've turned on the AD7711 excitation current sources of +/- 200uA.
Your maximum voltage across the PT100 is thus 200uA * 137R = ~27mV.
You want to present ~2.5V to the A2D converter.
In other words you need a gain of ~90.
The filter settings change the filter time constants.
The effect is a compromise between noise and settling time.
You have to choose, depends on how fast your temperature is likely to change.
To convert A2D value to temperature you now work backwards.
Use full-scale reading and reference voltage to convert A2D value to A2D input voltage.
Divide by gain to get voltage across PT100.
Divide by excitation current to get resistance.
Use formula or LUT to convert to temperature.
Mike |
|
|
AlternativeSearch
Joined: 28 May 2012 Posts: 2
|
|
Posted: Tue May 29, 2012 3:58 am |
|
|
Hello Mike,
Thanks for your reply. I appreciate it a lot.
I would be greatful if you could answer some of my queries:
1) I didnt understand aboout the 2.5V to be presented to the A2D converter, I thought that the ADC would present an appropriate voltage depending on the resistance to keep a constant .200uA.
2)Regarding the gain of 90 ,There are only 3 gains bits (G0,G1,G2) - can I set it to a Gain of 64 and then just divide by 64,since there is no option to set 90.
3) I am currently using a filter of 0x145 - is this ok? I do get changes in values pretty frequently.
4) I am unsure on how to calculate the full scale reading and reference voltage(27mv I presume).
Thanks once again,
Warm Regards,
A. |
|
|
Mike Walne
Joined: 19 Feb 2004 Posts: 1785 Location: Boston Spa UK
|
|
Posted: Tue May 29, 2012 4:49 am |
|
|
Quote: | 1) I didnt understand aboout the 2.5V to be presented to the A2D converter, I thought that the ADC would present an appropriate voltage depending on the resistance to keep a constant .200uA.
2)Regarding the gain of 90 ,There are only 3 gains bits (G0,G1,G2) - can I set it to a Gain of 64 and then just divide by 64,since there is no option to set 90.
3) I am currently using a filter of 0x145 - is this ok? I do get changes in values pretty frequently.
4) I am unsure on how to calculate the full scale reading and reference voltage(27mv I presume). |
You have to appreciate that I've never seen either your PT100 or an AD7711. Today I read the data sheet for the AD7711, and have used PT100's
(1) The AD7711 generates +200uA from two current sources. You have no control over them (apart from turning on/off). The 200uA passed through the PT100 generates the voltage you are trying to measure. Your PT100 voltage is then amplified by the AD7711's internal PGA before it reaches the real a2d converter. Assuming that the reference for the a2d is the built in 2.5V, that's the maximum sensible voltage to feed to the converter. You should always try to use as much as possible of the a2d range.
(2) OK you need a gain of 90. You can only have 64 or 128. 128 will over-range the a2d, so you have to settle for 64.
(3) I'll have to have another look at the data sheet for that one. Like I said before, I've never even seen the part.
(4) 2.5V input to the real a2d will give full scale output. For a 24bit converter that's 0xFFFFFF. So you take your a2d reading, divide by 0xFFFFFF, and multiply by 2.5 to get the real a2d input voltage. Then divide by the PGA gain to get the PT100 voltage.
Mike
EDIT I'm assuming that you mean you've set FS11-FS0 to 0x145, and a 10MHz clock. You've got ~60Hz notch frequency. PT100's are fairly sluggish so probably OK. Depends on your application. You'll just have to try it. |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|