Maker Pro
Maker Pro

Interfacing NTC thermistor

Rahul Sreekumar

May 14, 2014
4
Joined
May 14, 2014
Messages
4
How can I interface an NTC thermocouple with pic?? How can I calculate the Steinhart-Hart coefficients..?? I don't know the manufacturer of the NTC thermistor.. I'm including a picture of my NTC thermistor... Please Help.... :(
 

Attachments

  • 20140514_162621.jpg
    20140514_162621.jpg
    64.2 KB · Views: 212

Harald Kapp

Moderator
Moderator
Nov 17, 2011
13,700
Joined
Nov 17, 2011
Messages
13,700
Welcom to our forum.

How can I interface an NTC thermocouple with pic??
You can't, because an NTC is not a thermocouple.
An NTC is a resistor whose resistance varies (nonlinearly) with temperature. From your mentioning Steinhart-Hart coefficients I assume you have an NTC.
A thermocouple is an interface of two different metals that generates a voltage proportional to temperature.

For either of the two sensors you will need a suitable signal conditioning circui that converts either the resistance of the NTC or the small voltage from the thermocouple to a voltage that can be measured by the ADC of a PIC.
An NTC's resistance can easily be measured by driving a current through the NTC and measuring the voltage drop. Here is an application note by microchip that gives the relevant information.

If you don't know the parameters of the NTC, you can measure the resistance<>temperature characteristic (compare table 2 in the application note) and evaluate the resulting table to arrive at the coefficients (see app note and also e.g. Wikipedia).
 

MicroMe

May 18, 2014
21
Joined
May 18, 2014
Messages
21
Thermistors are great little sensors and as you are aware just change resistance with temperature, so any method that measures resistance is a good start.
The application note referenced above is good and well worth the read. Basically you need to pass a current into the thermistor and measure the voltage, but choose a current that does not cause the thermistor to self heat and change its reading. Here lies the problem, at low currents you will not read much voltage change and at higher currents you get heating errors. The cure is to design an amplifier to match the generated voltage to the PIC A/D.

Or you can use an external A/D and one of the slow 20bits (and over) can also provide benefits, giving a high resolution and rejecting mains pickup.

An alternative is to put the thermistor in a 555 type timer as an oscillator and use the PIC counters to read the frequency. I have used this in the past and it worked very well.

Once you have the reading you then need to convert it and the 'best' method depends on your requirements and the PIC. A floating point conversion will be the best but slowest and most resource hungry. Look up tables and interpolation between values (straight line) can be good if acceptable and for fixed alarm temperatures you don't need to convert, just find the 'value' that matches your alarm levels.
 
Top