Как узнать номинал терморезистора

| Текущее время: Ср янв 24, 2024 15:43:42 |
Часовой пояс: UTC + 3 часа
Запрошенной темы не существует.
Часовой пояс: UTC + 3 часа

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y
Работоспособность сайта проверена в браузерах:
IE8.0, Opera 9.0, Netscape Navigator 7.0, Mozilla Firefox 5.0
Адаптирован для работы при разрешениях экрана от 1280х1024 и выше.
При меньших разрешениях возможно появление горизонтальной прокрутки.
По всем вопросам обращайтесь к Коту: kot@radiokot.ru
©2005-2024
Измерение температуры при помощи NTC термистора и микроконтроллера AVR
Одним из вариантов для измерения температуры является использование термисторов. Среди преимуществ термистора можно выделить большое значение температурного коэффициента, то есть значительное изменение сопротивления в зависимости от температуры (порядка 2-10% на Кельвин). Термисторы бывают двух типов: с положительным температурным коэффициентом (PTC, Positive Temperature Coefficient), то есть увеличивающие своё сопротивление с увеличением температуры, и с отрицательным (NTC, Negative Temperature Coefficient) – уменьшающие сопротивление с возрастанием температуры. Речь в данной статье пойдёт про вторые, и про их использования для измерения температуры в сочетании с микроконтроллерами AVR
Характеристика NTC термистора
Термисторы характеризуются рядом параметров, такими, как максимальный допустимый ток, точность, сопротивление при определённой температуре (как правило, при 25°С). Одним из параметров, характеризующим степень изменения сопротивления в зависимости от температуры является коэффициент температурной чувствительности, обозначаемый B. Этот коэффициент рассчитывается на основе значений сопротивления при двух конкретных значениях температур. Во многих случаях этими температурами выбираются 25°С и 100°С. Обычно температуры, использованные при вычислении коэффициента указываются после буквы, например B25/100. Коэффициент B измеряется в Кельвинах и вычисляется по следующей формуле:
где R1 и R2 — значения сопротивлений при температурах соответственно T1 и T2, выраженных в Кельвинах.
Из этой формулы следуют и обратные:
Вычисление температуры
Термисторы обладают высокой степенью нелинейности параметров, и термисторы различных моделей, даже при одинаковых значениях параметра B25/100 могут по разному изменять сопротивление в зависимости от температуры. Поэтому формула [3] может лишь приблизительно оценить температуру. Кроме того, такая формула подразумевает сложные вычисления, которые требуют много процессорного времени, что часто является неприемлемым. Более простым и эффективным подходом является хранение таблицы, в которую заносятся предварительно рассчитанные значения, возвращаемые АЦП при тех, или иных температурах. Для экономии памяти можно хранить значения только для некоторых точек, искать их в таблице двоичным поиском, а промежуточные значения получать линейной интерполяцией. Для измерений температуры окружающего воздуха с точностью до 0.3°C, достаточно хранить значения с шагом 5°C. Если значения лежат в пределах 16 бит (и занимают 2 байта), то для хранения такой таблицы для диапазона измеряемых температур от -30 до 70 градусов потребуется всего 40 байт. Точность измерений можно повысить, уменьшив шаг таблицы. Так при шаге 2°C можно добиться точности до 0.1°C на широком диапазоне измерений.
Производители термисторов, как правило, приводят таблицы показывающие изменение сопротивления в зависимости от температур. Значения в этих таблицах также привязаны к сетке температур с некоторым шагом (например, 5°C). Используя формулы [1] и [2] можно с достаточной точностью интерполировать табличные значения.
Схемы подключения
Подключение термистора
Наиболее простым вариантом подключения является схема A. При выборе номинала резистора RA примерно равным сопротивлению термистора в районе измеряемых температур, значения U будут изменяться ближе к линейным, что обеспечит большую точность при интерполяции табличных значений.
Выбирая номиналы RA и термистора, следует учесть, что протекающий через термистор ток вызывает его нагрев и, как следствие, искажение показаний. Желательно чтобы мощность на термисторе не превышала 1 мВт. А значит, при напряжении U0 = 5В, RA должен быть как минимум, 10 килоОм. Сопротивление термистора в измеряемом диапазоне должно иметь примерно тот же порядок.
Схема B призвана ограничить мощность, рассеиваемую на термисторе.
Схемы C и D являются обратными к A и B. Их имеет смысл использовать, если требуется измерять низкие температуры, когда референтное значение АЦП (Uref) ниже U0.
Подключение к АЦП микроконтроллера ATmega
| Подключение АЦП микроконтроллеров ATmega |
У контроллеров ATmega для снижения шумов используется отдельная линия питания для модуля АЦП. Инструкция рекомендует подключать эти входы через фильтр: индуктивность L = 10мкГн, и конденсатор C2 = 0,1мкФ.
Микроконтроллер может использовать либо внешнее референтное напряжение для АЦП, либо внутреннее (2,56В или 1,1В), либо, в качестве такового, использовать напряжение питания АЦП: AVCC. При использовании внешнего напряжения, оно должно быть подано на вход AREF. При использовании AVCC, или внутреннего напряжения 2,56В, между этим входом и землёй должен быть размещён конденсатор (на схеме C1). Инструкция не даёт чёткого указания для выбора ёмкости конденсатора, рекомендую использовать керамический конденсатор 0,1мкФ и более.
Для снижения измеряемых шумов, рекомендую термистор также подключать к фильтрованному напряжению параллельно AVCC, и настроить на использование этого напряжения в качестве референтного.
Дополнительно, для подавления шумов возникающих на линиях, можно установить конденсатор C3 в диапазоне 1-100нФ.
Следует учесть, что помимо модуля АЦП, вход AVCC запитывает также некоторые из портов ввода/вывода (как правило, на тех же выводах, что используются для АЦП). Использование этих портов на вывод и подключение к ним нагрузки может создать дополнительные шумы в работе АЦП.
Чтобы нивелировать шумы, возникающие на АЦП, рекомендую провести замеры несколько раз подряд и просуммировать полученные значения. В микроконтроллерах ATmega АЦП – 10-разрядный. Просуммировав результаты 64 подряд идущих измерений, результат остаётся в пределах 16-битного беззнакового целого, что не потребует дополнительной памяти для сохранения таблицы значений. При большем числе измерений также можно оставаться в пределах 16 бит, соответствующим образом сдвигая или деля результат.
Расчёт таблицы значений
Вашему вниманию предлагаю скрипт для онлайн расчёта таблицы значений АЦП.
Расчёт значений ведётся либо по двум значениям температур и сопротивлений, либо вводится списком, либо используется одна из предзагруженных R/T характеристик. В настоящее время загружены R/T характеристики термисторов фирмы Siemens/EPCOS. Выберите подходящую из списка.
Загруженные характеристики даны с шагом 5°С, при выборе меньшего шага сетки, значения получаются путём интерполяции по формулам [1] и [2] двух ближайших значений из таблицы.
При построении таблицы автоматически соответствующим образом обновляется пример исходного кода под ней.
Внимание! Так как параметры термисторов в значительной мере нелинейны, расчёт по двум значениям сопротивлений, либо по значению и коэффициенту будет очень приблизительным. Вычисленное значение температуры при измерении высоких, или низких температур в таком случае может значительно (на десятки градусов) отличаться от актуальной.
Чтобы узнать подходящий тип R/T характеристики для вашего термистора, скачайте документацию, данную заводом изготовителем.
Сводная таблица для некоторых моделей термисторов Siemens/Epcos приведена ниже. Нажмите на код R/T характеристики, чтобы подгрузить параметры в форму ниже:
| Код | Сопротивление при 25°С, кОм | R/T характеристика | B25/100, К | |
| B57891S , выводной 4,5мм (datasheet, pdf) | ||||
| B57891S0222+008 | 2,2 | 1008 | 3560 | |
| B57891S0502+008 | 5 | 2003 | 3980 | |
| B57891S0103+008 | 10 | 4901 | 3950 | |
| B57891S0203+008 | 20 | 2904 | 4300 | |
| B57891S0104+008 | 100 | 4003 | 4450 | |
| B57891M , выводной 3,5мм (datasheet, pdf) | ||||
| B57891M0102+000 | 1 | 1009 | 3930 | |
| B57891M0152+000 | 1,5 | 1008 | 3560 | |
| B57891M0222+000 | 2,2 | 1013 | 3900 | |
| B57891M0332+000 | 3,3 | 2003 | 3980 | |
| B57891M0472+000 | 4,7 | 2003 | 3980 | |
| B57891M0682+000 | 6,8 | 2003 | 3980 | |
| B57891M0103+000 | 10 | 4901 | 3950 | |
| B57891M0153+000 | 15 | 2004 | 4100 | |
| B57891M0223+000 | 22 | 2904 | 4300 | |
| B57891M0333+000 | 33 | 2904 | 4300 | |
| B57891M0473+000 | 47 | 4012 | 4355 | |
| B57891M0683+000 | 68 | 4012 | 4355 | |
| B57891M0104+000 | 100 | 4003 | 4450 | |
| B57891M0154+000 | 150 | 2005 | 4600 | |
| B57891M0224+000 | 220 | 2005 | 4600 | |
| B57891M0334+000 | 330 | 2007 | 4830 | |
| B57891M0474+000 | 470 | 2006 | 5000 | |
| B57164K , выводной 5,5мм (datasheet, pdf) | ||||
| B57164K0471+000 | 0,47 | 1306 | 3450 | |
| B57164K0681+000 | 0,68 | 1307 | 3560 | |
| B57164K0102+000 | 1 | 1011 | 3730 | |
| B57164K0152+000 | 1,5 | 1013 | 3900 | |
| B57164K0222+000 | 2,2 | 1013 | 3900 | |
| B57164K0332+000 | 3,3 | 4001 | 3950 | |
| B57164K0472+000 | 4,7 | 4001 | 3950 | |
| B57164K0682+000 | 6,8 | 2903 | 4200 | |
| B57164K0103+000 | 10 | 2904 | 4300 | |
| B57164K0153+000 | 15 | 1014 | 4250 | |
| B57164K0223+000 | 22 | 1012 | 4300 | |
| B57164K0333+000 | 33 | 1012 | 4300 | |
| B57164K0473+000 | 47 | 4003 | 4450 | |
| B57164K0683+000 | 68 | 2005 | 4600 | |
| B57164K0104+000 | 100 | 2005 | 4600 | |
| B57164K0154+000 | 150 | 2005 | 4600 | |
| B57164K0224+000 | 220 | 2007 | 4830 | |
| B57164K0334+000 | 330 | 2006 | 5000 | |
| B57164K0474+000 | 470 | 2006 | 5000 | |
| B57540G , выводной, стеклянный «капля» 0,8мм (datasheet, pdf) | ||||
| B57540G0502+000, +002 | 5 | 8402 | 3497 | |
| B57540G1103+000, +002 | 10 | 8307 | 3492 | |
| B57540G1103+005, +007 | 10 | 7003 | 3625 | |
| B57540G0203+000, +002 | 20 | 8415 | 4006 | |
| B57540G1303+005, +007 | 30 | 7002 | 3988 | |
| B57540G0503+000, +002 | 50 | 8403 | 4006 | |
| B57540G1104+000, +002 | 100 | 8304 | 4092 | |
| B57540G0234+000, +002 | 230 | 8405 | 4264 | |
| B57540G0145+000, +002 | 1400 | 8406 | 4581 | |
| B57551G , выводной, стеклянный «капля» 1,8мм (datasheet, pdf) | ||||
| B57551G0202+000, +002 | 2 | 8401 | 3436 | |
| B57551G1103+000, +002 | 10 | 8307 | 3492 | |
| B57551G1103+005, +007 | 10 | 7003 | 3625 | |
| B57551G1303+005, +007 | 30 | 7002 | 3988 | |
| B57551G1104+000, +002 | 100 | 8304 | 4092 | |
| B57621С5 , SMD 3,2х1,6мм (datasheet, pdf) | ||||
| B57621C5102+062 | 1,0 | 3206 | 3450 | |
| B57621C5472+062 | 4,7 | 1309 | 3520 | |
| B57621C5103+062 | 10 | 1010 | 3530 | |
| B57621C5153+062 | 15 | 1008 | 3560 | |
| B57621С0 , SMD 3,2х1,6мм (datasheet, pdf) | ||||
| B57621C0222+062 | 2,2 | 1308 | 3060 | |
| B57621C0332+062 | 3,3 | 1309 | 3520 | |
| B57621C0472+062 | 4,7 | 1309 | 3520 | |
| B57621C0103+062 | 10 | 1010 | 3530 | |
| B57621C0153+062 | 15 | 1008 | 3560 | |
| B57621C0223+062 | 22 | 1008 | 3560 | |
| B57621C0333+062 | 33 | 2003 | 3980 | |
| B57621C0473+062 | 47 | 2001 | 3920 | |
| B57621C0683+062 | 68 | 2001 | 3920 | |
| B57621C0104+062 | 100 | 4901 | 3950 | |
| B57621C0154+162 | 150 | 2903 | 4200 | |
| B57621C0224+062 | 220 | 2903 | 4200 | |
| B57621C0334+062 | 330 | 1014 | 4250 | |
| B57621C0474+062 | 470 | 1014 | 4250 | |
| B57703M , выводной 10мм, с «ухом» 8,5×3,7мм (datasheet, pdf) | ||||
| B57703M0502G040 | 5 | 8016 | 3988 | |
| B57703M0103G040 | 10 | 8016 | 3988 | |
| B57703M0303G040 | 30 | 8018 | 3964 | |
Форма для он-лайн расчёта значений АЦП
*Из-за нелинейности параметров термистора, расчёт температуры на основе таблицы, построенной по двум точкам, будет грубым и полученное значение может на десятки градусов отличаться от действительного при измерении высоких и низких температур. Для точного измерения в широком диапазоне выберите одну из предзагруженных R/T характеристик, соответствующую вашему термистору, или перечислите список значений R/R1 вручную.
начиная с T2, с выбранным шагом сетки.
Разделитель значений — запятая.
| T,°С | R/R1 | R,килоОм | U,В | I,мкА | P,мВт | U/Uref | ADC | E,°С |
|---|
Пояснения к таблице:
жирным выделены значения R/R1 и R, полученные на основе табличных. Обычным шрифтом обозначены значения полученные интерполяцией или экстраполяцией по формулам.
ADC – округлённое значение на выходе АЦП, с учётом множителя. Значения, выходящие за предел измерений АЦП, не отображаются.
I,мкА — ток в цепи.
P,мВт — мощность, рассеиваемая на термисторе.
E – эвристическая оценка возможной погрешности вычисленной температуры, вызванной использованием линейной интерполяции табличных значений, и ограниченной точностью АЦП. Позволяет выбрать параметры и схему включения таким образом, чтобы в области измеряемых значений погрешность была минимальна. Эта оценка не учитывает возможный шум, возникающий на АЦП, а также погрешность, вызванную нагревом термистора из-за протекающих токов. Погрешность можно уменьшить выбрав меньший шаг таблицы, используя АЦП большей разрядности, или путём усреднения большего числа измерений, а также подбором номиналов сопротивлений в цепи.
Код, соответствующий таблице
#include #include // Значение температуры, возвращаемое если сумма результатов АЦП больше первого значения таблицы #define TEMPERATURE_UNDER 0 // Значение температуры, возвращаемое если сумма результатов АЦП меньше последнего значения таблицы #define TEMPERATURE_OVER 0 // Значение температуры соответствующее первому значению таблицы #define TEMPERATURE_TABLE_START 0 // Шаг таблицы #define TEMPERATURE_TABLE_STEP 50 // Тип каждого элемента в таблице, если сумма выходит в пределах 16 бит - uint16_t, иначе - uint32_t typedef uint16_t temperature_table_entry_type; // Тип индекса таблицы. Если в таблице больше 256 элементов, то uint16_t, иначе - uint8_t typedef uint8_t temperature_table_index_type; // Метод доступа к элементу таблицы, должна соответствовать temperature_table_entry_type #define TEMPERATURE_TABLE_READ(i) pgm_read_word(&termo_table[i]) /* Таблица суммарного значения АЦП в зависимости от температуры. От большего значения к меньшему Для построения таблицы использованы следующие парамертры: */ const temperature_table_entry_type termo_table[] PROGMEM = 0 // Нажмите "Построить таблицу" на форме выше, чтобы заполнить этот массив >; // Функция вычисляет значение температуры в десятых долях градусов Цельсия // в зависимости от суммарного значения АЦП. int16_t calc_temperature(temperature_table_entry_type adcsum) < temperature_table_index_type l = 0; temperature_table_index_type r = (sizeof(termo_table) / sizeof(termo_table[0])) - 1; temperature_table_entry_type thigh = TEMPERATURE_TABLE_READ(r); // Проверка выхода за пределы и граничных значений if (adcsum thigh) < #ifdef TEMPERATURE_UNDER if (adcsum < thigh) return TEMPERATURE_UNDER; #endif return TEMPERATURE_TABLE_STEP * r + TEMPERATURE_TABLE_START; > temperature_table_entry_type tlow = TEMPERATURE_TABLE_READ(0); if (adcsum >= tlow) < #ifdef TEMPERATURE_OVER if (adcsum > tlow) return TEMPERATURE_OVER; #endif return TEMPERATURE_TABLE_START; > // Двоичный поиск по таблице while ((r - l) > 1) < temperature_table_index_type m = (l + r) >> 1; temperature_table_entry_type mid = TEMPERATURE_TABLE_READ(m); if (adcsum > mid) < r = m; > else < l = m; > > temperature_table_entry_type vl = TEMPERATURE_TABLE_READ(l); if (adcsum >= vl) < return l * TEMPERATURE_TABLE_STEP + TEMPERATURE_TABLE_START; > temperature_table_entry_type vr = TEMPERATURE_TABLE_READ(r); temperature_table_entry_type vd = vl - vr; int16_t res = TEMPERATURE_TABLE_START + r * TEMPERATURE_TABLE_STEP; if (vd) < // Линейная интерполяция res -= ((TEMPERATURE_TABLE_STEP * (int32_t)(adcsum - vr) + (vd >> 1)) / vd); > return res; >
Пример использования
В примере ниже используется вывод на семисигментный индикатор.
Описание работы с индикатором смотрите в другой моей статье.
| Вывод значения температуры на идникатор СС56-12GWA |
ADMUX = 0b01000111; // референтное напряжение - Vcc, вход ADC7, реузультат по правому краю ADCSRA = 0b10000111; // 1/128 делитель частоты, включение АЦП while(1) < temperature_table_entry_type summ = 0; for (uint8_t i = 0; i < 64; i++) < ADCSRA |= _BV(ADSC); loop_until_bit_is_clear(ADCSRA, ADSC); summ += ADC; > int16_t t = calc_temperature(summ); ledind_num(t, 1, 0b01010011); // Вывод значения на индикатор с префиксом в виде буквы t _delay_ms(250); >
1 ms; mod: Mon, 11 Jan 2021 09:39:36 GMT; gen: Wed, 24 Jan 2024 12:43:42 GMT
Что такое термистор (терморезистор), для чего нужен
Пожалуй, самый распространённый пассивный элемент в электротехнике и электронике – постоянный резистор. Его сопротивление в идеале постоянно. Наряду с этим, применение находят и компоненты, чьи характеристики зависят от внешних условий (освещения, приложенного напряжения, температуры и т.п.). В эту категорию входят терморезисторы.
Определение термистора и принцип его работы
Терморезистором (термосопротивлением) называется пассивный электронный компонент. Его определяющей характеристикой служит сопротивление, которое зависит от уровня нагрева элемента. Иными словами, при разных температурах сопротивление терморезистора будет различным.

Состав
Термосопротивления изготавливают из материалов, сопротивление которых зависит от степени нагрева. Это могут быть:
- легированные полупроводники;
- оксиды переходных металлов;
- стеклообразные полупроводники;
- другие материалы.
Сочетая компоненты с различными свойствами, можно получить терморезисторы с разными температурными характеристиками.
Виды термисторов
Классифицировать термозависимые резисторы можно по разным параметрам.
Температурный коэффициент сопротивления (ТКС)
По этому параметру элементы делятся на две группы:
- С положительным ТКС (PTC).
- С отрицательным ТКС (NTC).
У первой категории при повышении температуры сопротивление растет. У второй группы сопротивление при увеличении температуры падает.
Терморезисторы с положительным ТКЕ еще называют позисторами, а элементы с отрицательным ТКС называют термисторами, хотя часто этот термин употребляют в более широком плане применительно ко всем термосопротивлениям.

Диапазон эксплуатационных температур
Каждый терморезистор может работать только в диапазоне температур, определяемом его конструкцией:
- сверхнизкотемпературные – работают в области абсолютного нуля;
- низкотемпературные – рабочая область не выше минус 100 градусов С;
- среднетемпературные – от минус 100 до +236 градусов С;
- высокотемпературные – выше +236 градусов;
- сверхвысокотемпературные — +600..+1000 градусов С.
В бытовой и любительской аппаратуре практически всегда применяются среднетемпературные терморезисторы.
Способ подогрева
По этому параметру терморезисторы бывают двух видов:
- С прямым подогревом.
- С косвенным подогревом.
Элементы первого типа нагреваются от окружающей среды или от тепла, выделяющегося при прохождении тока через сам элемент. Вторая группа термосопротивлений имеет встроенную спираль для нагрева.
Существуют и другие параметры, по которым классифицируются терморезисторы — по конструкции, степени защиты, материалу и т.п.
Маркировка и графическое обозначение на схеме
Основой общего обозначения терморезистора на схеме служит УГО обычного резистора. К нему добавлен знак зависимости сопротивления от температуры. Иногда показывают дополнительную характеристику – знак ТКС, наличие косвенного подогрева и т.д.

В зарубежных схемах иногда значок температуры опускают, а на схеме добавляют буквенное обозначение NTC или PTC. Иногда применяют стрелочные обозначения. Так, разнонаправленные стрелки символизируют отрицательный ТКС – при росте температуры сопротивление уменьшается (и наоборот). У позисторов стрелки направлены в одну сторону.

Для отечественных терморезисторов принята составная маркировка:
- буквенная часть означает тип ТКС терморезистора (ТР – отрицательный ТКС, ТРП – положительный);
- первая цифра – материал, из которого изготовлен элемент;
- следующая цифра – номинальное сопротивление или порядковый номер изделия;
- последняя цифра – допуск в процентах (не всегда указывается).
Например, ТР-2-33 кОм – терморезистор с отрицательным ТКС, на медно-марганцевой основе с номиналом 33 кОм.
Можно встретить и устаревшие обозначения, содержащие информацию о материале, из которого изготовлен элемент, например КМТ – кобальт-марганцевое термосопротивление.
У импортных терморезисторов общий стандарт маркировки отсутствует (да и отечественные производители не всегда его придерживаются). Каждая фирма-изготовитель может применять свои правила. Например, Philips зачастую просто указывает каталожный номер изделия. Также широко применяется стандартная цифровая маркировка в виде колец или точек, в зависимости от типа корпуса. У элемента, приведенного на фото, указан тип ТКС (NTC), номер по классификации производителя (12D) и диаметр (20 мм).

Где применяют терморезисторы
Самое очевидное применение резисторов, сопротивление которых зависит от температуры – измерение температуры. Замеряя сопротивление, можно определить температуру элемента (и окружающих предметов). В этом случае используется нагрев термосопротивления от окружающей среды.
Используя прямой нагрев (когда элемент нагревается проходящим через него током), можно реализовать защиту от переходных процессов. В этих случаях применяются термосопротивления с отрицательным ТКС. При пуске электродвигателей, при зарядке конденсаторов в начальный момент времени ток может достигнуть значительных величин и повредить элементы цепи. Но если последовательно с нагрузкой включить NTC, то на первом этап он будет иметь большое сопротивление и ограничит ток. ПО мере разогрева его сопротивление будет падать, влияние на цепь уменьшаться. После прогрева сопротивление уменьшится до незначительных величин, но к этому моменту переходные процессы уже закончатся.

А позисторы можно использовать для организации тепловой защиты. Например, при перегрузке или заклинивании электродвигателя возникают большие токи. Резистор с положительным ТКС в нормальном режиме не будет заметно влиять на ток в цепи питания, но при появлении сверхтока нагреется, сопротивление увеличится и действие короткого замыкания ограничится.
Кроме того, терморезисторы с различным ТКС применяют для создания инфранизкочастотных генераторов, измерения мощности СВЧ-излучения, для температурной компенсации режимов активных элементов и для многих других целей.
Основные характеристики
К основным параметрам термисторов, как представителей класса резисторов, относят:
- номинальное сопротивление (при +20 или +25 градусах);
- рассеиваемую мощность.
Имеются и специфические характеристики – например, температурный коэффициент сопротивления (ТКС). Этот параметр показывает, насколько изменяется сопротивление элемента при изменении температуры на 1 градус С. Чем выше ТКС, тем чувствительнее элемент, но, как правило, уже диапазон рабочих температур – этот параметр также важен при выборе. Для позисторов важной характеристикой служит опорная температура – точка перелома характеристики, определяющая рабочую зону элемента.
Во многих случаях важно знать и рабочие напряжения элементов – номинальное и максимальное.
Преимущества и ограничения
К преимуществам термосопротивлений относят:
- Широкий рабочий температурный диапазон.
- Достаточно высокую точность измерений.
- Отсутствие механических движущихся частей.
- Относительную дешевизну.
- Простоту использования.
- Низкую тепловую инерционность, обеспечивающую быстродействие.
К основным же минусам можно отнести значительную нелинейность характеристик, а также склонность к старению.
Подключение в схемы и системы
Для работы в схемах ограничения и защиты термистор подключается последовательно с защищаемой нагрузкой. В компьютерных импульсных блоках питания термисторы ограничивают ток заряда фильтрующих конденсаторов. Без термосопротивления повышенный ток пойдет через входные цепи и диоды выпрямительного моста. Чтобы предотвратить их выход из строя, надо увеличивать мощность этих элементов, что ведет к увеличению веса, габаритов и стоимости. А можно решить проблему применением маленького дешевого NTC. В приведенном примере ток заряда конденсатора С5 проходит через предохранитель FU1, обмотки дросселя T1 и диоды моста D1..D4. Если этот ток не ограничить термистором, на схеме обозначенного индексом T, он может достичь больших значений и вывести компоненты из строя.

Для измерений обычно используют мостовые схемы. На приведенном примере изначально мост сбалансирован (например, при нулевой температуре), напряжения на входах операционного усилителя равны. При изменении температуры мост разбалансируется, напряжения на входах ОУ становятся неодинаковыми, разница усиливается и может быть выведена на стрелочный индикатор или цифровой дисплей.

С меньшей точностью для измерения температуры можно использовать делитель напряжения, составленный из обычного резистора и терморезистора. При этом напряжение на измерительной цепи обязательно должно быть стабилизированным. При изменении температуры будет меняться напряжение на средней точке делителя.

Как проверить термистор на работоспособность
Самый простой способ убедиться в работоспособности термистора – измерить его сопротивление (например, тестером в режиме омметра). Если тестирование выполняется при комнатной температуре, результат должен быть близок к номиналу, указанному в спецификации на элемент (обычно значение сопротивления обозначается для температуры в +20 или +25 градусов С). Если измерение выполняется при температуре, значительно отличающейся от комнатной, надо взять поправку с учетом знака и абсолютного значения ТКС. Обычно этого достаточно, чтобы считать, что термистор работает нормально.
Если надо получить более убедительные доказательства работоспособности термоэлемента, надо нагреть или охладить элемент, по мере изменения температуры сравнивая результаты с реальной характеристикой.
Подключение терморезисторов (термисторов, термосопротивлений)

Терморезистор (термистор, термосопротивление) — полупроводниковый прибор, электрическое сопротивление которого изменяется в зависимости от его температуры.
Одним из главных достоинств термистор, является их НИЗКАЯ ЦЕНА, по сравнению с другими датчиками температуры.
Терморезистор был изобретён Самюэлем Рубеном (Samuel Ruben) в 1930 году. Терморезисторы изготавливаются из материалов с высоким температурным коэффициентом сопротивления (ТКС), который обычно на порядки выше, чем ТКС металлов и металлических сплавов.
Термисторы обладают высокой степенью нелинейности параметров, и термисторы различных моделей могут по разному изменять сопротивление в зависимости от температуры.
По типу зависимости сопротивления от температуры различают терморезисторы с отрицательным (NTC-термисторы, от слов «Negative Temperature Coefficient») и положительным (PTC-термисторы, от слов «Positive Temperature Coefficient» или позисторы) температурным коэффициентом сопротивления (или ТКС). Для позисторов — с ростом температуры растёт их сопротивление, для NTC-термисторов увеличение температуры приводит к падению их сопротивления.
Однако, PTC термисторы имеют своего рода точку перелома и сильно меняют сопротивление при некоторой температуре. Это делает взаимодействие с PTC термисторами чуть более сложным. По этой причине в большинстве дешевых измерителей температуры предпочтительнее использовать NTC термисторы.
Далее будет рассмотрена работа с терморезистором MF52.
Характеристики терморезистора MF52
• Температурный диапазон: от -55 до +125˚С;
• Погрешность измерения: ±0,25˚С;
• Допуск: ±1%(F); ±2%(G); ±3%(H); ±5%(J); ±10%(K);
Описание терморезистора MF52 (datasheet):
• на английском языке;
• на русском языке.
Схемы включения терморезисторов

Включение терморезисторов. Схема 1
Наиболее распространенным вариантом подключения является схема 1.
При выборе номинала резистора R1, примерно, равным, сопротивлению термистора в районе измеряемых температур, значения Uout будут изменяться ближе к линейным, что обеспечит бОльшую точность.
Выбирая номиналы R1 и терморезистора, следует обратить внимание на протекающий через терморезистор измерительный ток. Если его величина будет более 100 мкА или же сопротивление термистора будет иметь небольшую величину, то результат измерений искажается. Это явление называется саморазогревом, и зависит не только от нагрузки, но и от применяемых материалов и конструкции датчика. Желательно, чтобы мощность на термисторе не превышала 1 мВт, а значит, что при напряжении U = 3.3В, R1 должен быть не менее, 10 кОм. Сопротивление терморезистора в измеряемом диапазоне должно иметь примерно тот же порядок.

Включение терморезисторов. Схема 2
Схема 2 используется для режима линеаризации сопротивления (включение обычного резистора параллельно термистору). Если значение резистора равно сопротивлению термистора при комнатной температуре, область линеаризации будет симметрична относительно точки комнатной температуры. При использовании включения по схеме 2, за счет резистора R3 также ограничивается рассеиваемая мощность на терморезисторе, что положительно сказывается на точности измерений температуры.
Этот подход хорош, если микропроцессор не может вычислять выражения с плавающей запятой, поскольку он упрощает реакцию в некотором диапазоне температур до линейного характера. Это также упрощает проектирование схемы, в которой нет микропроцессора.

Включение терморезисторов. Схема 3, 4
Схемы 3 и 4 являются обратными к 1 и 2.
Вычисление значения температуры
Зависимость сопротивления термистора от температуры обычно указывается в характеристиках конкретной модели термистора. Но всегда она представляет из себя логарифмическую кривую, где, если откладывать температуру по оси X, а сопротивление по оси Y, то при температуре 25 ºC, мы по оси Y имеем номинальное значение сопротивление термистора, т.е. в нашем случае 10кОм.

А далее, при повышении температуры, сопротивление либо убывает, как в нашем случае NTC-термистора, либо возрастает, в случае PTC-термистора.
Уравнение Штейнхарта-Харта
Наилучшим приближением, известным на сегодняшний день, является формула Штейнхарта-Харта. Уравнение Стейнхарта — Харта — математическая модель, описывающая сопротивление полупроводниковых терморезисторов с отрицательным температурным коэффициентом электрического сопротивления в зависимости от температуры. Уравнение названо в честь Джона Стейнхарта (John S. Steinhart) и Стэнли Харта (Stanley R. Hart), впервые опубликовавших его в 1968 г.
Уравнение Штейнхарта для точного приближения:
где:
• ln R — логарифм сопротивления при температуре T в Кельвине,
• A, B и C — коэффициенты, полученные из экспериментальных измерений.
Коэффициенты A, B и C обычно публикуются поставщиками термисторов в составе таблицы данных.
Также константы можно определить с помощью данного калькулятора, введя в нем значения сопротивления терморезистора при трех значениях температуры или вы их можете непосредственно узнать из даташита на ваш терморезистор.
Формула Штейнхарта-Харта, как правило, составляет около ±0,15°С в диапазоне от -50°С до +150°С, что является достаточной для большинства применений. Если требуется высокая точность, диапазон температур должен быть уменьшен, а точность около ±0,01°C может быть получена в диапазоне от 0°C до +100°C.
Табличный метод
Уравнение Стейнхарта — Харта подразумевает сложные вычисления, которые требуют много процессорного времени, что часто является неприемлемым. Более простым и эффективным подходом является хранение таблицы, в которую заносятся предварительно рассчитанные значения температуры при тех, или иных значениях АЦП.
Использование константы «B» (модифицированное уравнение Штейнхарта-Харта)
Существует еще более простое уравнение, которое менее точно, но содержит только одну константу. Эта константа обозначена как B, и поэтому уравнение называется B-уравнением.
Каждый материал термистора имеет различную материальную константу и, следовательно, индивидуальную кривую отношения сопротивления и температуры.
Так, константа «B» определяет одно резистивное значение при базовой T1 (25ºС), и другое значение при Т2 (например, при 50ºC или 100ºC).
Следовательно, значение «B» определит постоянную константу материала термистора, ограниченную диапазоном T1 и T2.
1/T = 1/T0 + (1/B)*ln(Rt/Rt0)
где:
• T0 — комнатная температура в Кельвинах, для которой указывается номинал термистора; T0 = 25 + 273.15;
• T — искомая температура, в Кельвинах;
• Rt — измеренное сопротивление термистора в Омах;
• Rt0 — номинальное сопротивление термистора в Омах (при температуре 25ºС).
Из этой формулы следует и обратная, по которой определяем искомую температуру, в Кельвинах:
T = 1/(1/T0 + ln(Rt/Rt0)/B)
Схема подключения
В схеме используется термистор MF52.
Рекомендации по выбору резистора «Rd» озвучены выше (выделено жирным шрифтом). Так как, сопротивление используемого термистор MF52 составляет 10кОм, то сопротивление «Rd» выбрано равным 8,2кОм (ближайшее значение, из имеющихся в наличии).
Схема подключения термистора MF52
WiFi-модуль и термистор установлены на макетной плате для проектирования (Breadboard), позволяющей собирать проекты без пайки.
В качестве внешнего источника используется адаптер питания для зарядки сотовых телефонов, смартфонов, планшетов, с выходным током не менее 500мА. Для автономного питания контроллера можно использовать портативные аккумуляторы (Power Bank) емкостью от 2000мА*ч и выше. В качестве соединительного кабеля между макетной платой (Breadboard) и адаптером используется кабель для зарядки сотовых телефонов.
Подготовка модуля к работе
Подготовка модуля к работе заключается в выполнении следующих шагов.
Шаг 1. Программирование модуля
Программирование модуля (запись программы (прошивки) «Smacont-ESP») осуществляется в соответствии с инструкцией «Программирование модулей ESP и отладочных плат».
Шаг 2. Настройка сетевого соединения с модулем
Выполнить настройку сетевого соединения с модулем в соответствии с инструкцией «Первое включение».
Шаг 3. Настройка WiFi-сети (при необходимости)
При необходимости выполнить настройку WiFi-сети в соответствии с инструкцией «Настройки WiFi-сети».
Конфигурация модуля
GPIO
Для оцифровки напряжения с делителя, используется встроенный АЦП модуля.
Для использования значений АЦП модуля для расчета температуры, необходимо привязать «GPIO A0» модуля к одному из «Vx» (см. рисунки ниже).
Привязка «GPIO A0» модуля к «Vx»
Проконтролируем изменение значения переменной «adc» на графике. Для этого необходимо перейти на вкладку «График» и в выпадающем списке «График 0», выбрать переменную «adc».
Контроль изменения значения переменной «adc» на графике
Для удобства наблюдения изменения значения переменной «adc» необходимо установить следующие параметры на вкладке «График»:
• Развертка = 50 мс/pixel;
• Шаг сетки = 3000 мс;
• Шкала min = 0;
• Шкала max = 1024.
Как видно на рисунке ниже, при касании терморезистора рукой (при нагревании термистора), значение АЦП уменьшается. И наоборот.
Контроль изменения значения переменной «adc»
Действия и сценарии
Определяем две переменные «Vx», в одной бедет содержжаться значение резистора делителя Rd (присваиваем переменной имя «Rd_V22»), во второй будет храниться рассчитанное значение температуры (присваиваем переменной имя «Temp_V22»).
Для повышения точности вычисления, отдельно было измерено сопротивление постоянного резистора Rd, значение которого равно 8122 Ома. Значение сопротивления заносим в переменную «Rd_V22».
Для удобства обработки данных от терморезистора, в прошивке «Smacont-ESP» предусмотрена функция «sens_thermistor(ADC,Rd,Rt0,B,T0,CorrT)».
Заполняем параметры, выделенные синим цветов.
Для выполнения действия, создадим сценарий, который будет выполняться при каждом обновлении переменной «adc». Открыв вкладку «Vx map», проконтролируем значение текущей температуры.
В дальнейшем, полученное значение текущей температуры «Temp_V22» можно использовать в других сценариях, например, для реализации проекта терморегулятора.
Проконтролируем изменение значения текущей температуры на графике. Для этого необходимо перейти на вкладку «График» и в выпадающем списке «График 0», выбрать переменную «Temp_V22».
Контроль изменения значения текущей температуры
Для удобства наблюдения изменения значения переменной «Temp_V22» необходимо установить следующие параметры на вкладке «График»:
• Развертка = 50 мс/pixel;
• Шаг сетки = 3000 мс;
• Шкала min = 0;
• Шкала max = 33.
Контроль изменения значения текущей температуры
Как видно на рисунке выше, при касании терморезистора рукой (при нагревании термистора), показания текущей температуры увеличиваются.
Цифровая фильтрация значений температуры
Чтобы исключить резкие выбросы в рассчитаных значениях и для получения плавной характеристики можно использовать цифровую фильтрацию значений температуры.
Для цифровой фильтрации любой переменной используются первые 8-мь переменных: V0,V1,V2,V3,V4,V5,V6,V7.
• назначить имя переменной, в которой будет сохранено значение после цифровой фильтрации (например, «Temp_V7»);
• определить уровень фильтрации: 2,4,8 (например, 8);
• передать рассчитанное значение температуры «Temp_V22» в переменную «Temp_V7» (за это отвечает действие N9 «Temp_V7 = Temp_V22»);
• создать сценарий, в котором будет выполняться действие N9 «Temp_V7 = Temp_V22». Сценарий будет выполняться при обновлении значений «adc».
Значение температуры «до» и «после» цифрового фильтра
Загрузка конфигурации на устройство
Загрузка конфигурации на устройство производится в соответствии с инструкцией «Загрузка конфигурации на устройство».
Заключение
• При использовании встроенного АЦП модуля, с разрешающей способностью 1024 отсчета, дискретность измерения температуры при помощи термисторов составляет 0,08˚С.
• Следует учесть, что встроенный АЦП модуля имеет нелинейность, в районе младших и старших значений.
• Применение термисторов в качестве датчиков температуры имеет определенные ограничения, связанные с точностью и погрешностью измерений, но при использовании предложенного в рамках данной статьи метода такое применение показало хорошие результаты при небольшой стоимости датчика температуры.
• Термисторы-бусинки отличаются меньшей инерционностью при изменении температуры окружающей среды (быстрее нагреваются/остывают), чем датчики в герметичном исполнении.
Дополнительная информация о терморезисторах
Условно терморезисторы классифицируют как низкотемпературные (предназначенные для работы при температурах ниже 170 К), среднетемпературные (от 170 до 510 К) и высокотемпературные (выше 570 К). Выпускаются терморезисторы, предназначенные для работы при температурах от 900 до 1300 К. Терморезисторы способны работать в различных климатических условиях и при значительных механических нагрузках. Однако, с течением времени, при жёстких условиях его эксплуатации, например, термоциклировании, происходит изменение его исходных термоэлектрических характеристик, таких как:
— номинального (при 25 °C) электрического сопротивления;
— температурного коэффициента сопротивления.
Одним из существенных недостатков термисторов в виде «бусинки», как температурных датчиков, является то, что они не взаимозаменяемы и требуют индивидуальной градуировки. Не существует стандартов, регламентирующих их номинальную характеристику сопротивление — температура. «Дисковые» термисторы могут быть взаимозаменяемыми, однако при этом лучшая допускаемая погрешность не менее 0,05 °С в диапазоне от 0 до 70 °С. Типичный 10-килоомный термистор в диапазоне 0—100 °С имеет коэффициенты, близкие к следующим значениям:
— A=1,03*10^(-3)
— B=2,93*10^(-4)
— C=1,57*10^(-7)
Режим работы терморезисторов зависит от выбранной рабочей точки на вольт-амперной характеристике (или ВАХ) такого прибора. В свою очередь ВАХ зависит от приложенной к прибору температуры и конструктивных особенностей терморезистора.
Терморезисторы с рабочей точкой, выставленной на линейном участке ВАХ, используются для контроля за изменением температуры и компенсации параметров (электрическое напряжение или электрический ток) электрических цепей, возникших вследствие изменения температуры. Терморезисторы с рабочей точкой, выставленной на нисходящем участке ВАХ (с «отрицательным сопротивлением») применяются в качестве пусковых реле, реле времени, в системах измерения и контроля мощности электромагнитного излучения на сверхвысоких частотах (или СВЧ), системах теплового контроля и пожарной сигнализации, в установках регулирования расхода жидких и сыпучих сред.
Наиболее широко используются среднетемпературные терморезисторы (с температурным ТКС от −2,4 до −8,4 %/К), работающие в широком диапазоне сопротивлений (от 1 до 106 Ом).
Также существуют терморезисторы с небольшим положительным температурным коэффициентом сопротивления (или ТКС) (от 0,5 до 0,7 %/К) выполненные на основе кремния, сопротивление которых изменяется по закону близкому к линейному. Такие терморезисторы находят применение в системах охлаждения и температурной стабилизации режимов работы транзисторов в различных радиоэлектронных системах.
Так же терморезисторы с положительным ТКС применяются в качестве саморегулирующихся нагревательных элементов, сопротивление которых растет по мере роста собственной температуры (PTC нагреватель). Такой нагревательный элемент никогда не перегреется и будет выдавать примерно одинаковую тепловую мощность в широком диапазоне напряжений.