Go Down

Topic: thermistor values (Read 884 times) previous topic - next topic

arduinosAREfun

assuming I do something like this:
http://www.ladyada.net/learn/sensors/thermistor.htm
correctly building me a thermometer like thingy...

if I graph the response to temperature will I get a linear response, exponent, log? non-linear??

(I would rather know, but will probably double check when I build it)

thaanks :)

dxw00d

As that link lead to a 404 not found page, I don't know.

Anyhow, look for the datasheet for whatever device you are using, and it should tell you what shape response curve the device returns.

robtillaart

Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)

robtillaart

google thermistor graph => resulted in many graphs including this one.

http://www.digitaldandt.org/db/index.php/datasheet/show/42
Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)

arduinosAREfun

sorry about the link.  good catch..

it looks like a log curve, however that thermistor only goes up to 100 or so, and approaches a zero resistance when it does.

analog pins give it a value between 0 and 1023 right?

is it likely to be log or linear...  up to 400C (673K) or so for one thermometer, and then up to 1400C (1473K) or so for another thermometer...?

can we assume that it will be a log line irrelevant of the temperature limits?

arduinosAREfun

ha.  woops.  serious examination later - not looking for a thermistor, looking to understand how to use a thermocouple with an arduino.

just one end in analog and one in ground will return a 0,
one end in analog and one in 5v will return a 1023.

but a thermcouple is meant to generate its own teeny voltage.  how might I read that into an arduino?

arduinosAREfun

never mind.  arduino cant do it alone...

http://www.ladyada.net/learn/sensors/thermocouple.html
seems to have helped me.

need a max#### of sorts.  will look into it.

mrburnette

Remember that a voltage divider is the cheap way to approach the problem.  You would get far superior results using a constant current source for the thermistor.

Additionally, you may find these links of interest:
http://www.phanderson.com/arduino/ntc_therm.html
http://www.phanderson.com/picaxe/lin_thermistor.html

- Ray

robtillaart

[optimization]
nice link - bookmarked.

for efficiency reasons I would change this line

TKelvin = 1.0 / (A_const + B_const * x + C_const * square(x) + D_const * cube(x));

to

TKelvin = 1.0 / (A_const + ( (D_const * x + C_const) * x + B_const) * x );


- it removes the need for square() and cube() => removes 3 FPO's  ==> win a few micros() per call ;)

Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)

Go Up