Designing a thermistor temperature sensing device can be challenging if you plan to use it over its entire temperature range. A thermistor is typically a high-impedance, resistive device, so it can simplify one of the interface issues when you need to convert the thermistor's resistance to a voltage value. A more challenging interface issue, however, is how to capture the thermistor's nonlinear behavior digitally with a linear ADC.
The term "thermistor" comes from a generalization of the description "heat{{0}}sensitive resistor". Thermistors include two basic types, positive temperature coefficient thermistors and negative temperature coefficient thermistors. Negative temperature coefficient thermistors are ideal for high-precision temperature measurement. To determine the temperature around the thermistor, you can do it with the help of the Steinhart-Hart formula: T=1/(A0 plus A1(lnRT) plus A3(lnRT3)). Among them, T is the temperature in Kelvin; RT is the resistance value of the thermistor at temperature T; and A0, A1 and A3 are constants provided by the thermistor manufacturer.
Съпротивлението на термистора се променя с температурата и тази промяна е не-линейна, както показва формулата на Стейнхарт-Харт. Когато се извършват измервания на температурата, еталонният ток трябва да се прокара през термистора, за да се създаде еквивалентно напрежение, което има не-линеен отговор. Можете да опитате да компенсирате не-линейния отговор на термистора, като използвате справочната таблица, предоставена на микроконтролера. Дори ако бихте могли да стартирате такъв алгоритъм на фърмуера на микроконтролера, все пак ще ви е необходим високопрецизен конвертор за улавяне на данни при наличие на екстремни температури.
Alternatively, you can use a "hardware linearization" technique and a lower precision ADC before digitizing. (Figure 1) One technique is to place a resistor RSER in series with the thermistor RTHERM and a reference voltage or power supply (see Figure 1). The PGA (Programmable Gain Amplifier) is set to 1V/V, but in such a circuit, a 10-bit precision ADC can only sense a very limited temperature range (about ±25 degree ).
Фигура 1, моля, имайте предвид, че високотемпературният регион не е разрешен на фигура 1. Но ако усилването на PGA се увеличи при тези температурни стойности, изходният сигнал на PGA може да се контролира в рамките на диапазон, в който ADC може да осигури надежден преобразувания за идентифициране на температурата на термистора.
Алгоритъмът за измерване на температурата на фърмуера на микроконтролера чете 10-битовата прецизна цифрова стойност на ADC и я прехвърля към рутинната програма на софтуера за хистерезис на PGA. Процедурата за хистерезис на PGA проверява настройката за усилване на PGA и сравнява цифровата стойност на ADC със стойността на възела на напрежението, показана на фигура 1. Ако изходът на ADC надвишава стойността на възела на напрежението, микроконтролерът ще настрои PGA усилването на следващото по-високо или по-ниска настройка на усилването. Ако е необходимо, микроконтролерът отново получава нова стойност на ADC. След това стойностите на усилването на PGA и ADC се предават на рутинна програма за линейна интерполация на микроконтролера.
Getting data from a nonlinear thermistor is sometimes seen as an "impossible task". You can use a series resistor, a microcontroller, a 10-bit ADC, and a PGA to solve the measurement problems of non-linear thermistors beyond ±25 degree .



