Главная » Статьи » Как подключить

Подключаем термопару к микроконтроллеру
 Термопары широко применяются там где необходимо точно померить высокие температуры, температуры вплоть до 2500°C. То есть там, где цифровые датчики бы сразу сдохли от перегрева, применяются термопары. Разновидностей термопар существует достаточно много, но самое большое распространение получили хромель-алюмелевые (тип К) термопары, из-за своей дешевизны и практически линейному изменению термоэдс. Этот вид термопар ставятся в водонагреватели и другие бытовые приборы с контролем температуры, их повсеместно используют для контроля температуры при плавке металла, с помощью этих термопар контролируется нагрев жала в паяльной станции. Поэтому будет весьма полезно познакомиться с ними поближе.
 
 Термопара это два проводника из разных металлов и имеющих общую точку контакта (спай). В точке этого контакта возникает разность потенциалов. Эта разность потенциалов зовется термоэдс и напрямую зависит от температуры, в которой находится спай. Металлы подбираются таким образом, чтобы зависимость термоэдс от температуры нагрева была наиболее линейна. Это упрощает расчет температуры и сокращает погрешность измерений. 
 
 Так широко применяемые хромель-алюмелевые термопары имеют достаточно высокую линейность и стабильность показаний на всем диапазоне измеряемых температур. 
Ниже приведен график для хромель-алюмелевых термопар (тип К) показывающий, зависимость возникающей термоэдс от температуры спая (в конце статьи будет ссылка на график с большим разряшением):




 Таким образом значение термоэдс достаточно умножить на нужный коэффициент и получить температуру, не заморачиваясь с табличными значениями и аппроксимацией - один коэффициент на весь диапазон измерений. Очень просто и понятно. 
 Но встает вопрос о подключении термопары к микроконтроллеру. Понятно что если на выходе термопары напряжение, тогда задействуем АЦП, но разность потенциалов на выходе термопары слишком мала, чтобы уловить хоть что-то. Поэтому прежде его нужно увеличить, например, применив операционный усилитель.

 Берём стандартную схему неинвертирующего включения операционного усилителя:



Отношение входного и выходного напряжений описывается простой формулой:

Vout/Vin = 1 + (R2/R1)

 От значений резисторов обратной связи R1 и R2 зависит коэффициент усиления сигнала. Величину усиления сигнала нужно подбирать с учетом того, что будет использоваться в качестве опорного напряжения. 
 Допустим опорным будет напряжение питания микроконтроллера 5V. Теперь необходимо определится с диапазоном температур, которые собираемся измерять. Я взял пределом измерения 1000 °C. При этом значении температуры на выходе термопары будет потенциал примерно 41,3мВ. Это значение должно соответствовать напряжению в 5 вольт на входе АЦП. Поэтому операционник должен иметь коэффициент усиления не менее 120. В итоге родилась такая схема:







 В загашнике у меня нашлась давно собранная плата с этим операционником, собирал как предусилитель для микрофона, ее я и применил:







 Собрал на бредборде такую схему подключения двухстрочного дисплея к микроконтроллеру:




 

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








Код  Bascom-AVR для работы с термопарой:


$regfile = "m8def.dat"
$crystal = 8000000

Dim W As Integer

'подключение двухстрочного дисплея

Config Lcdpin=Pin,Rs=Portb.0,E=Portd.7,Db4=Portd.6,Db5=Portd.5,Db6=Portb.7,Db7=Portb.6
Config Lcd = 16 * 2
Cursor Off
Cls

'считывание значения с АЦП по прерыванию от таймера

Config Timer1 = Timer , Prescale = 64
On Timer1 Acp

'конфигурация АЦП

Config Adc = Single , Prescaler = Auto , Reference = Avcc

Enable Interrupts
Enable Timer1

Do

Cls
Rem Температура:
Lcd "Teјѕepaїypa:"
Lowerline
Lcd W


Waitms 200

Loop


'работа с АЦП

Acp:

Start Adc                                  'запуск АЦП
= Getadc(1)
= W / 1.28                               'подгоняем замеры под действ. температуру
Return

End



 Число 1,28 в знаменателе получил опытным путем, подгоняя значение считанное с АЦП в известное значение температуры.
 Коротко расскажу как это происходило у меня. В качестве эталона замера температуры выступил пар в кипящем чайнике. Для чистоты эксперимента сначала замерил температуру пара мультиметром, подсоединив к нему термопару. Удостоверившись в правильности показаний, замерил температуру уже новоиспеченным девайсом и подгоняя коэффициент деления, установил значение 100°C.



    




 После выставления первой контрольной точки, хорошо было бы повторить вышеописанное при другой известной температуре, но дальше экспериментировать не стал. В пламени зажигалки измерил ~700 °C (что похоже на правду), а вот при комнатной температуре девайс выдавал под 50°C, наверно дело в мусоре младших разрядов АЦП. Но думаю собрать, например, терморегулятор для паяльника вполне сгодится.
 



Категория: Как подключить | Добавлено: 26.03.2012
Просмотров: 119491 | Комментарии: 15 | Теги: ЖКИ, АЦП, термопара | Рейтинг: 4.2/18
Всего комментариев: 15
15 romani   (28.12.2013 01:11) [Материал]
Огромнейшее спасибо за объяснение! Вы помогли мне защитить курсач! и написать его)))

14 miolk   (27.12.2013 22:49) [Материал]
Для паяльной станции предпочтительней термопара ХК (хромель-копель). У неё термоэдс в несколько раз выше, соответственно измерения точнее. ХА используют при более высоких температурах, т.к. для ХК предел - около 400 градусов Цельсия.

+1   Спам
13 forter   (24.12.2013 20:20) [Материал]
Я уже писал, что у ОУ имеется напряжение смещения. Так вот, есть еще и токи смещения, они незначительные, но при измерении таких малых напряжений, как у термопары, и они играют роль нескомпенсированных ошибок. В общем, чтобы их хоть как - то скомпенсировать входы ОУ нагружаются резистрами. В первом приближении можно считать, что токи смещения одинаковы для инвертирующего и неинвертирующего входов. Соответственно, резисторы по входам должны быть одинаковые. На инвертирующем входе, в нашем случае, параллельно подключен резистор 1 кОм и 5,1 + 120 кОм, таким образом, эквивалентное сопротивление на этом входе 1 кОм, поэтому, строго говоря, на неинвертирующем входе должен быть резистор R4 не 10 кОм, а 1 кОм.
Ну, и, конечно, резистор играет некоторую защитную роль.
Аналоговая техника, особенно измерение малых величин токов и напряжений, требует очень аккуратного и грамотного подхода.

12 romani   (23.12.2013 22:53) [Материал]
какую фнкцию выполняет резистор R4?

11 exersizze   (10.08.2013 23:54) [Материал]
forter, благодарю за разъяснения!

+1   Спам
10 forter   (09.08.2013 15:50) [Материал]
Здравствуйте. коллеги!
По поводу того, зачем нужен R2?
Цепь R2C1 - просто низкочастотный фильтр. Как известно у ОУ имеются свои шумы, наконец, на его вход тоже может попасть наводка. Вот чтобы избавиться или, по крайней мере, ослабить эти эффекты и применяют такие цепи. Но, по - моему, правильнее было бы применить резистор с номиналом, допустим, в 100 КОм, а емкость конденсатора увеличить до 0,1 мкф. Правда, нельзя слишком сильно уменьшать сопротивление - может возникнуть самовозбуждение ОУ.
Есть еще замечание - изменяя коэффициент усиления, мы просто изменяем результирующий наклон зависимости напряжения на выходе ОУ от температуры, не учитывая, что в ОУ есть еще одна очень неприятный эффект - смещение нуля. Это означает, что даже при отсутствии сигнала на выходе (можно считать, что на входе) всегда есть постоянное смещение. Если взять другой ОУ, имеющий выводы балансировки нуля (например, как отечественный 140УД6), от этого можно избавиться - между выводами балансировки подключается многооборотный резистор, а его движок подключается к питанию, но это только для двухполярного питания. Этим эффектом страдают все ОУ. Все бы ничего, но, будучи сбалансированным при одной температуре, ОУ разбалансируется, если его температура изменится - это, так называемый, температурный дрейф нуля. Если кто - то работал с электронно - лучевыми осциллографами, тот знает, что через несколько минут после его включения луч обязательно смещается вверх или вниз. Этот эффект и есть дрейфа нуля.
По этой причине и применяют, особенно при измерении очень малых напряжений (как в случае с термопарой) прецизионные ОУ, у которых этот эффект намного меньше, но стоят они намного дороже обыкновенных ОУ

9 gadz   (08.08.2013 21:04) [Материал]
Почитайте дополнительно о компенсация холодного спая. Здесь показано для чего это
http://www.compeljournal.ru/enews/2007/15/10

8 exersizze   (06.04.2012 23:45) [Материал]
Операционник все равно дает очень маленький выходной ток, на память десятки микроампер. А выход операционника отличается очень маленьким сопротивлением. И поэтому при уменьшении R2 разницы не будет, имхо.
а вообще я этот резюк поставил в соответствии со схемой на радиокоте про цифровую паялку, там похожая схема усилителя и стоит именно 1МОм, решил идти по проверенной схеме )

7 Andrew   (06.04.2012 14:47) [Материал]
У МЕНЯ ВОПРОС, ДЛЯ ЧЕГО НУЖЕН РЕЗИСТОР R2 1Мом ? ЕСЛИ В ДАТАШИТАХ НА АВР УКАЗАНО ЧТО:
The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or less.
Я ТАК ПОНИМАЮ ВЫХОДНОЕ СОПРОТИВЛЕНИЕ ДОЛЖНО БЫТЬ МЕНШЕ 10КОМ, А У ВАС АЖ 1МОМ ?

6 exersizze   (28.03.2012 09:04) [Материал]
Вы правы поиск рулит) Доходчиво и просто расписано здесь

5 tenevikus   (27.03.2012 22:41) [Материал]
в поделках они нужны.... расскажите нам....

4 tenevikus   (27.03.2012 22:40) [Материал]
спасибо за статью огромное. но есть одна просьба.... раз все ходят к вам за информацией... то расскажите в следующем материале в вашей доходчивой форме про эти опер.усилители. понятно что книги и поиск рулят.... но мы же у вас столуемся и куча тонкостей нам лишняя...

3 exersizze   (26.03.2012 19:53) [Материал]
Спасибо за совет, интересная ссылка за спам не считается)
На моей платке стоит подстроечник на 5 кОм, возможно им получится подрегулироват коэффициент усиления операционника, а вообще да, муторное это дело. Под каждую термопару нужно проводить индивидуальную калибровку.
Еще при большой разнице горячего и холодного спаев (точки соединения металлов и свободные концы) может возникать погрешность в десятки градусов, поэтому для точного измерения высоких температур нужно городить схему компенсации холодного спая. И самое главное, что десятибитного АЦП микроконтроллера явно не достаточно для измерения диапазона температур выше 1000 град.

2 4ester   (26.03.2012 13:43) [Материал]
кстати забыл сказать что в схеме есть ошибка соединения в месте R6? r8. быть не должно.

1 4ester   (26.03.2012 13:42) [Материал]
при комнатной температуре девайс выдавал под 50°C
Скорее всего у вас не правильно подобран коэффициент усиления операционника, я когда делал ИК паяльную станцию уйму времени убил на настройку усилителей термопар, суть заключалась в следующем, за основу была взята вот эта схема http://ur5kby.at.ua/publ....-1-0-67 (извините за ссылку заранее, не сочтите за спам,) в начале резистором по схеме R6 при погруженной темропаре в талую воду выставлялся 0°C, потом в схему последовательно с резистором R9 был введен еше один подстроечный резистор, а номинал R9 был уменьшен, а уже этим резистором, изменяя коэффициент усиления добивался показаний в 100°C в кипящей воде, только после всего этого усилитель начал линейно усиливать во всем диапазоне температур и не врать.

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]






авторизация
Логин:
Пароль: