Signal Conditioning

cancel
Showing results for 
Search instead for 
Did you mean: 

Thermistor reading clamped at -17 deg C

Hi signal conditioning experts.

 

I am measuring several thermistor temperature channels using an SCXI-1503 connected to a PCI-6221.

 

The thermistors when open circuit (i.e. not connected) read approximately -17.7 deg C, but when the thermistor is connected the temperature reading is correct.

 

All was well, I thought, until I tried to measure a temperature below -17.7 deg C, and then the reading stayed clamped at this temperature of -17.7 deg C.

 

The task is set up in MAX, and the minimum range is set to well below -17 deg C so this is not it. Any ideas what may be the problem?

0 Kudos
Message 1 of 13
(7,469 Views)

Dear NRP

 

From first diagnosis, it seems that your thermistor has not been calibrated correctly, causing it to saturate at the lower values. Can I ask what type of thermistor you are using, these are; RTD, Vex (Voltage excited) or Iex (Current Excited)?

 

Have you tried calibration through the DAQmx interface and set the excitation values high enough for the range? I have included a picture below to illustrate where these options are found in the DAQmx task. (Highlighted in red)

 

 

 

Many thanks for using the NI forums and I look forward to your reply.

Kind regards

David

Applications Engineer
National Instruments UK
0 Kudos
Message 2 of 13
(7,449 Views)

David,

 

Thanks for your answer. I think I have gotten to the bottom of the problem yesterday before reading your reply.

 

To cut a long story short,the thermistor resistance at that temperature was saturating the analogue input of the interface module (as you suggested). So simple solution is to reduce the excitation current, easy I thought...

 

BUT... the system I am working on uses SCXI-1503 modules to interface with the thermistors. What I did not realise is that this module does not have a user definable excitation current, it is fixed at 100 uA. Oddly though MAX lets you change the excitation current, and it was only when I actually measured the current did I realise that the current does not change. (Why MAX lets you change it, I do not know, seems like a bug to me...).

 

The excitation current probably needs to be more in the region of 10--> 15 uA for the particular thermistors (650 kohm at the coldest temperature we need to measure). Any suggestions on how to proceed here? I suppose I could get a new SCXI module that allows different current, or wire in my own external excitation current.

Message Edited by nrp on 10-14-2009 09:47 PM
0 Kudos
Message 3 of 13
(7,410 Views)

Dear NRP

 

Thank you for your reply. You are correct, the SCXI-1503 module has a fixed excitation current of 100 micro amps. And hence in MAX, you cannot change this, but the software automatically gives you this function. My advice first it place a resisitor in parallel over the thermistor to reduce the excitation current to suit your range. This will enable the module to then record values witin your workable range. Please let me know if this remedy works and hopefully it will provide a solution.

 

Many thanks.

Many thanks for using the NI forums and I look forward to your reply.

Kind regards

David

Applications Engineer
National Instruments UK
0 Kudos
Message 4 of 13
(7,397 Views)

David,

 

Can you please advise me how placing a resistor in parallel with the thermistor works?

 

My thermistor has a range of aprox 1k --> 600k over the temperature range I wish to use.

 

If I put a resistor in parallel, thus dropping the equivalent resistance, surely the reading will be incorrect?

 

For example, and for ease of figures, if I have a 200k thermistor and put a 200k resistor in parallel this will halve the effective resistance and result in 100k which is within the range of the SCXI module. So at this resistance I will get 10 V dropped across the thermistor and all will be fine.

 

BUT: when the thermistor is at only 1 k, putting a 200k in parallel results in a resistance of approx 1k... which is ok I suppose.

 

Hmm, perhaps I have just proved that it is ok 🙂

0 Kudos
Message 5 of 13
(7,393 Views)

Hi again NRP

 

By placing the resistor in parallel with the thermistor, you are 'linearizing' the resistor with the thermistor. This fixed resistor reduces the total resistance from the thermistor, and allows it to measure lower temperatures without affecting the signal. I ve attached a diagram of how to place a resistor over the thermistor. If you chose a suitable value for the resistor using the equation below to suit the range you should have no problem.

 

Parallel01

 

Please let me know how you get on. many thanks.

Many thanks for using the NI forums and I look forward to your reply.

Kind regards

David

Applications Engineer
National Instruments UK
0 Kudos
Message 6 of 13
(7,391 Views)

David,

 

thanks again for your continue support.

 

I still don't get it though... I understand the principle of what is going on, I just don't see how the measurment is going to be correct.

 

Assuming again my thermistor is 200k (at a certain temperature) and I can only measure 100k with my module, then I pick a 200k resistor to put in parallel to get an effective resistance of 100k. Thus with 100uA excitation current the volt drop across the thermistor in // with the shunt is going to be 10V. OK, I get this... no problems here.

 

BUT: at some higher temperature my thermistor now has a physical resistance of, say, 50k. Thus the effective resistance is = 50k*200k/(50k+200k) =  40k. My volt-drop across the pair is going to be 100uA*40k = 4V, and this is measured by the module. So surely my MAX task is going to report back the incorrect temperature as at this temperature my thermistor should have 50k*100uA = 5V.

 

This is the bit I dont get. The volt drop across the thermistor//shunt is different to if there was just the thermistor, surely this leads to the incorrect temperature being reported back???????

 

For this method to work do I not need a shunt resistor that varies with temperature also?

 

Have I misunderstood something fundamental here??? My thermistor actually has a usable range of about 500 ohms to 650 kohms, and is very non-linear. Does the resistor shunt method only work for certain small linear ranges or something?

0 Kudos
Message 7 of 13
(7,386 Views)

Hi NRP

 

I ve been looking at your problem in some more detail, and I have another avenue for a solution. Are you using DAQmx to measure and input your signals?; in particular DAQmx Create Channel VI?

If not I suggest using these as on the DAQmx Create Channel VI and the nodes above this VI there are values for Maximum and Minimum Value. This should override MAX and set the maximum and minimum values you want. Please let me know how you are acquiring the voltage/resistance from the thermistor.

 

Many thanks for using the NI forums and I look forward to your reply.

Kind regards

David

Applications Engineer
National Instruments UK
0 Kudos
Message 8 of 13
(7,356 Views)

David,

 

Yes I am using DAQmx, with the task created as a Temperature measurement (Thermistor with internal excitation current) in MAX.

 

The thermistor is hooked up to the SCXI-1503 as required (using the 1503 as the excitation source), and in my app I read back temperatures directly.

 

The fundamental problem still exists, I need to be able to measure approximately 600kohms (thats the thermistor resistance at -50degC) and the SCXI-1503 can only measure up to 100kohms (with the excitation current fixed at 100uA).

 

It seems my only solutions are to

1) use external excitation (this need to be approx 10-->15uA) and set the MAX task accordingly

2) use a shunt resistor and do some manipulation of the temperatures returned (scale them non-linearly in my app as MAX cannot add a scale to a thermistor channel to get true temperature)

 

Does this sound right to you?

 

Neil

0 Kudos
Message 9 of 13
(7,346 Views)

Hi again NRP

 

Thank you for your patience. I have now two options for you in regards to solving this problem.

 

1. The SCXI-1503 as we know can only handle a thermistor up to 100 k ohms, this is why your thermistor was saturating at -17.7 deg, as although your thermistor can produce 600 k ohms (temp of -50 deg C), saturation occurs at 100 k ohms; at -17.7 Deg C. So one solution is to change your value of thermistor to one with a low recording working temperature range but no more than 100 k ohms. I have found an external pdf doc for you to see the types of thermistors that are calibrated with low temps involved. One such resistor can record temperatures to -44 Deg C with a resistance of 99.26 k ohms. (Within 100k ohm range of SCXI module) and will allow you to record the low temperatures you require. I have included a link to this thermistor below. (Model Number 44004 - first column)

 

http://www.omega.com/temperature/Z/pdf/z256-257.pdf

 

 

 

2. Use an external excitation source that will neglect the low working range of the SCXI module and can handle the 600 k ohm thermistor value. However a problem with this is a phenomenan known as 'self-heating' which can introduce large errors into your equation. The level of the voltage output signal depends directly on the thermistor resistance and magnitude of the current excitation. Do not use a higher level of current excitation in order to produce a higher level output signal because the current causes the thermistor to heat internally, leading to temperature-measurement errors. (Self heating) I have included the manual for your viewing below. With reference to page 4-12 ; self-heating errors.

 

http://www.ni.com/pdf/manuals/374271a.pdf

 

 

I hope this offers a solution to your problem, please let me know how you get on. Many thanks.

Many thanks for using the NI forums and I look forward to your reply.

Kind regards

David

Applications Engineer
National Instruments UK
0 Kudos
Message 10 of 13
(7,326 Views)