|
Терморезистор + АTmega8 = измеритель температуры [-70...+500] С, как правильно подключить ? |
|
|
|
Sep 5 2006, 05:40
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Есть платиновый терморезистор с рабочим температурным диапазоном -70 ... +500 С. Формула изменения сопротивления от температуры известна из документации на него R = R0*(1 + A*t - B*t*t), где A,B - известные коэффициенты, t - температура в Цельсиях, R0 - соответственно сопротивление терморезистора при 0 С. Коэффициенты A и B таковы, что при температуре 400 С сопротивление увеличивается в 2,5 раза. У меня R0 = 1000 Ом. Хочу подключить его на вход 10 битного АЦП, встроенного в ATmega8. На сегодняшний день пока сделал очень просто - делитель питающего напряжения 1КОм + 1КОм, центральная точка на вход АЦП, в качестве верхнего (к +5В) резистора использован собственно сам терморезистор. Vref выбран внутренний (2,56 В). При этом 0С соответствует 2,5 В, а 400 С 1,43 В. Т. о. используется только небольшая часть всего диапазона АЦП. Как подключить терморезистор с максимальным соответствием шкале АЦП, чтобы интервал 0-400 С захватывал максимум размаха АЦП ? Вероятно, есть какие-то стандартные схемы для этого. Кроме того, в моей схеме используется измерительный ток через терморезистор порядка 2,5 мА, а из документации следует, что измерительный ток должен составлять порядка 0,3 мА, иначе существенную погрешность вносит тепло, выделяемое самим измерительным током. Но если я сделаю ток около 0,3 мА - изменение напряжения на входе АЦП станет и вовсе маленьким, и шкала измерения ещё более сузится... Какую же схему использовать ? Может, поставить усилитель на операционнике ?
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
|
 |
Ответов
(1 - 14)
|
Sep 5 2006, 06:21
|

Знающий
   
Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206

|
Производить измерение сопротивления платинового RTD при помощи резисторного делителя и встроенного в AVR АЦП - не лучшая идея. Если хотите использовать именно встроенный в AVR АЦП поставьте на входе усилитель на операционнике. Схемы можно поискать в различной литературе и инете. Например: http://www.analog.com/library/analogDialog...s_handbook.htmlЛучше для подключения RTD использовать сигма-дельта АЦП с диф.входами опорного и измеряемого например из серии AD77
--------------------
Пасу котов...
|
|
|
|
|
Sep 22 2006, 09:24
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Цитата(Shread @ Sep 22 2006, 11:39)  Цитата(Demeny @ Sep 6 2006, 11:16)  Cегодня сделал вход на обычном операционнике LM358, сделал коэффициент усиления 6 (на всю шкалу АЦП) и постоянное смещение... Всё стало очень неплохо. Спасибо.
Если 500 градусов у вас на самой плате, тогда так можно сделать, а если нет, то нужна 4хпроводная схема. Что значит на самой плате 500 С ??? Терморезистор вынесен на проводах, подключен к + входу ОУ, на - ОУ заведена ООС + DC offset. Всё работает вполне прилично - диапазон измерения растянут на всю шкалу встроенного в АТмегу8 АЦП.
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
|
Sep 22 2006, 12:44
|
    
Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731

|
Цитата(Demeny @ Sep 22 2006, 13:24)  Цитата(Shread @ Sep 22 2006, 11:39)  Цитата(Demeny @ Sep 6 2006, 11:16)  Cегодня сделал вход на обычном операционнике LM358, сделал коэффициент усиления 6 (на всю шкалу АЦП) и постоянное смещение... Всё стало очень неплохо. Спасибо.
Если 500 градусов у вас на самой плате, тогда так можно сделать, а если нет, то нужна 4хпроводная схема. Что значит на самой плате 500 С ??? Терморезистор вынесен на проводах, подключен к + входу ОУ, на - ОУ заведена ООС + DC offset. Всё работает вполне прилично - диапазон измерения растянут на всю шкалу встроенного в АТмегу8 АЦП. Вы забыли указать требуемую точность измерения температуры. Если сопротивление шнурков к датчику не внесет погрешность больше допустимой, то дальше можно о этом сопротивлении не думать (а также о букве B в характеристике датчика  . Если не уверены, имеет смысл что-нибудь почитать о методах измерения, датчиках и измерительных преобразователях - и нашей литературы в тырнете достаточно, и у AD видел неплохой даташит на эту тему.
|
|
|
|
|
Sep 22 2006, 17:43
|

Участник

Группа: Свой
Сообщений: 66
Регистрация: 21-09-06
Из: Москва
Пользователь №: 20 566

|
Цитата(Demeny @ Sep 5 2006, 09:40)  Есть платиновый терморезистор с рабочим температурным диапазоном -70 ... +500 С. можно марку указать ? тоже предполагаю использовать.
--------------------
Радиодетали недорого Arduino модули сенсоры в Москве круглосуточно 24/7 самовывоз безплатно от любой станции метро, есть и платная доставка - www.mkPochtoi.ru
|
|
|
|
|
Sep 23 2006, 02:43
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Цитата(xemul @ Sep 22 2006, 16:44)  Вы забыли указать требуемую точность измерения температуры. Если сопротивление шнурков к датчику не внесет погрешность больше допустимой, то дальше можно о этом сопротивлении не думать (а также о букве B в характеристике датчика  . Если не уверены, имеет смысл что-нибудь почитать о методах измерения, датчиках и измерительных преобразователях - и нашей литературы в тырнете достаточно, и у AD видел неплохой даташит на эту тему. Погрешность датчика, согласно документации, 0,04% (0,5С). Мне такая точность была не нужна, поэтому я пренебрег сопротивлением проводов (а оно действительно мало по сравнению с 1000 ом), использовал встроенный АЦП 10 бит. Диапазон 0 - 400 С растянул на 1024 точки, итого точность измерения составила не более 1 С, что для моей задачи более чем... Цитата(Foris @ Sep 22 2006, 21:43)  можно марку указать ? тоже предполагаю использовать. Pt 1000 - M222 производства фирмы HERAEUS
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
|
Sep 23 2006, 12:38
|
    
Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731

|
Если Вы про "Long-term stability: max. R0-drift 0.04% after 1000 h at 500°C", то перевожу: "Долговременная стабильность: максимальный уход R0 [=1000 Ом в Вашем случае - прим. переводчика  ] не более 0.04% после выдержки/эксплуатации в течение 1000 часов при 500°C." Оно, конечно, имеет отношение к точности, но потом. Точность RTD датчика нормируется при 0 °C и составляет для класса А 0.15 °C (0.06%), для класса В 0.3 °C (0.12%). Элементарный расчет: рекомендованный ток через RTD с R0=1000 Ом, при котором можно не учитывать его саморазогрев, Id = 0.1..0.3 mA. ТКС по линейной интерполяции характеристики датчика 3.850 x 10-3 К-1, т.е. сопротивление этого датчика будет изменяться на 3.85 Ом/К, что в пересчете на вольты дает 0.385..1.155 мВ/К, или на выходе усилителя с Ку=6 2.31..6.93 мВ/К. Из даташита на mega8: Vref int = 2.3..2.56..2.7 В (min..typ..max) - точность внутренней опоры в 5-10 % вписывается  . При Vref=2.56 В и 10-битной оцифровке имеем LSB=2.5 мВ Причуды АЦП меги (естесно, без совершенно отстойной опоры) составляют 1.75-3 LSB, т.е. желаемую погрешность удалось набрать на одном только АЦП. Остаются еще всякие ошибки от ОУ, источника тока для датчика, шнурков к датчику... СтОит их учитывать или нет, решать Вам.
|
|
|
|
|
Sep 23 2006, 19:40
|
иногда заглядывающий
   
Группа: Свой
Сообщений: 900
Регистрация: 18-05-05
Из: Зеленоград
Пользователь №: 5 170

|
Угу, а еще не забудьте про ТКС кабеля, и электрохимическую термо ЭДС, которая неминуемо возникнет из-за такой разности температур, точек спайки. Всетаки идеал, четырехпроводная схема, пусть даже без опорного резистора: т.е через сенсор сливать фиксированный ток(от источника тока), и мерять напряжение на терморезисторе. Если поставить нормальный операционник(большое входное сопростивление), можно для низкой разрешающей способности, которая вас устраивает(ацп меги)получить терпимую(на вкус и цвет, как говорится...) погрешность измерений.
В идеале нужен двухканальный ацп, сливать ток через последовательно соединенные термистор и опорный резистор, и мерять на каждом напряжение, и брать в качестве результатов измерений их отношение. Тогда можно скомпенсировать еще и некоторое болтание опорного источника тока. Только одно но, опорный резистор должен иметь низкий ТКС. Делали такое на ADS1240, получили очень хорошие результаты. Самый лучший вариант, конкретно для платинового термистора, сделать омметр, калибровать его по опорному сопротивлению, далее уже во внутреннем ПО забить характеристику вашей платины. Насколько я помню, по госту есть несколько типов термисторов платиновых, и каждый имеет некоторые отличия в характеристиках.
|
|
|
|
|
Oct 20 2006, 22:03
|
Частый гость
 
Группа: Свой
Сообщений: 82
Регистрация: 26-09-05
Пользователь №: 8 955

|
Цитата(Shread @ Sep 23 2006, 23:40)  Угу, а еще не забудьте про ТКС кабеля, и электрохимическую термо ЭДС, которая неминуемо возникнет из-за такой разности температур, точек спайки. Всетаки идеал, четырехпроводная схема, пусть даже без опорного резистора: т.е через сенсор сливать фиксированный ток(от источника тока), и мерять напряжение на терморезисторе. Если поставить нормальный операционник(большое входное сопростивление), можно для низкой разрешающей способности, которая вас устраивает(ацп меги)получить терпимую(на вкус и цвет, как говорится...) погрешность измерений.
В идеале нужен двухканальный ацп, сливать ток через последовательно соединенные термистор и опорный резистор, и мерять на каждом напряжение, и брать в качестве результатов измерений их отношение. Тогда можно скомпенсировать еще и некоторое болтание опорного источника тока. Только одно но, опорный резистор должен иметь низкий ТКС. Делали такое на ADS1240, получили очень хорошие результаты. Самый лучший вариант, конкретно для платинового термистора, сделать омметр, калибровать его по опорному сопротивлению, далее уже во внутреннем ПО забить характеристику вашей платины. Насколько я помню, по госту есть несколько типов термисторов платиновых, и каждый имеет некоторые отличия в характеристиках. Нет смысла учитывать пренебрежимо малые величины... Вы еще предложите учесть тепловые шумы, шумы предусилителя и т.д.. Не надо преумножать сущее сверх необходимости. Автору нужно по-мерять плюс-минус лапоть, даже без расчетов видно, что погрешность где-то в районе 5...10 градусов. Я понимаю измерение градиента температур, когда надо вылизывать и учитывать все, искать специально калиброванные датчики температур не отличающиеся по характеристикам более чем на 0.005 градуса, выбирать максимально малошумящие операционнки для усилителя, а тут... Можно использовать не двухканальный АЦП, а взять дельту-сигму с дифференциальной опорой и в качестве опоры использовать падение напряжения на образцовом резисторе, включенном последовательно с измеряемым, питать напряжением, главное не шумным, не обязательно особо стабильным (ну по сути та же идея что из двухканальным АЦП). Преимущество в скорости опроса и том, что нет разновременного измерения опоры и датчика, что не хорошо с точки зрения помех. Кроме того можно поробовать импульсное питание датчика - тогда можно давать допустим ток в 4 мА на время измерения, а потом в 9 раз большее время ждать - средний ток будет порядка 0.4 мА и перегрева практически не будет. Насчет характеристик. У автора иностранный датчик. Наши ГОСТы здесь не особо катят, хотя разница небольшая. Ну и кроме того разные типы ТСПшек в наших ГОСТах по сути отличаются только номиналами (можно смело забить одну таблицу в свои программы и масштабировать ее под номинал 50/100/500 Ом). Устаревшие госты не берем в расчет (новый и старый гост чуть отличаются в таблицах, но с такой точностью, на сколько отличие, никто и не меряет). Ну и если Вы вспомнили ГОСТы, то там используется название "термометр сопротивления платиновый", а не термистор.
|
|
|
|
|
Oct 21 2006, 00:52
|

Местный
  
Группа: Свой
Сообщений: 319
Регистрация: 3-09-05
Из: Беларусь, Новополоцк
Пользователь №: 8 188

|
Цитата(slabnoff @ Oct 21 2006, 01:03)  Насчет характеристик. У автора иностранный датчик. Наши ГОСТы здесь не особо катят, хотя разница небольшая. Ну и кроме того разные типы ТСПшек в наших ГОСТах по сути отличаются только номиналами (можно смело забить одну таблицу в свои программы и масштабировать ее под номинал 50/100/500 Ом). Вопрос: почему платиновый терморезистор, если платины в нем нет ни грамма, а? Нет разницы русский или иностранный. Платина (точнее ее параметры) и в Африке, и у нас одинаковые. Есть такое понятие - НСХ, слыхали? Не знаю как у вас, но у нас - у белорусов, новые ГОСТ'ы на платиновые терморезисторы представляют собой очень хорошую (почти дословную) копию няруских стандартов. Пользоваться одной таблицей не получится - нужно по крайней мере две для RTD с W100= 1,385 и W100=1,389 (последнее значение точно не помню) Ксати, небольшое дополнение по поводу полинома в самом первом сообщении. Если диапазон измерения -70 - +500, как написано, то для отрицательных температур полином будет немного другой - появиться еще один член. Говоря, про простые и не очень точные схемы измерения сопротивления, давайте вспомним про мостовую схемы. Если мост сбалансирован скажем при 0 С, то исчезает постоянная ненужная составляющая сигнала. Это к в вопросу об более рациональном использовании шкалы АЦП. При определенных условиях можно даже обойтись без внешнего усиления... Был бы другой диапазон температур при такой точности измерения можно было бы вообще использовать нечто вроде DS1820/DS1821 от Dallas'а
Сообщение отредактировал shasik - Oct 21 2006, 01:42
|
|
|
|
|
Dec 20 2006, 22:28
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Цитата(Archivarius @ Dec 20 2006, 15:37)  Ксати, небольшое дополнение по поводу полинома в самом первом сообщении. Если диапазон измерения -70 - +500, как написано, то для отрицательных температур полином будет немного другой - появиться еще один член. Да, согласно документации на терморезистор, для отрицательных температур полином действительно другой. Я не стал его приводить именно из-за того, что Цитата(Archivarius @ Dec 20 2006, 15:37)  Вроде разговор начинался о "нагревательном элеменете"!!! и чтобы не загромождать топик не относящейся к делу информацией.
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|