Резистивные датчики температуры

Обсуждаем контроллеры компании Atmel.
binarick
Первый раз сказал Мяу!
Сообщения: 36
Зарегистрирован: Пт фев 27, 2015 17:48:39

Резистивные датчики температуры

Сообщение binarick »

Доброго времени уважаемые!

Задался вопросом подружить платиновые резистивные датчики температуры с атмегой и с нелинейной характеристикой.
Покажите пример кода пожалуйста как вообще это делается.
Понимаю, что через АЦП, интересует на примере как вычисляется температура.
Может есть драйвер под этот вопрос как программный так и аппаратный.

Искал, не нашёл, на форуме если плохо тыкните носом плиз.

Спасибо за ваше время и ответы.
Реклама
Аватара пользователя
eess9
Вымогатель припоя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Re: Резистивные датчики температуры

Сообщение eess9 »

Решили сделать себе? Если для единичного случая, то можно. Для серии сложнее, т.к. резистивные термодатчики имеют нехилый разброс параметров от экземпляра к экземпляру (хотя может у дорогих не так, а у дешевых :facepalm:). Я брал конкретный датчик, измерял его сопротивление при разных температурах в термошкафу, рядом с эталонным термометром. Строил его кривую R=f(t). Естественно, чем больше точек, тем лучше. А дальше брал второе плече, например, 10кОм и считал напряжение на входе АЦП после этого делителя. Зная опору АЦП, можно найти функцию температура=f(результатАЦП). Далее, температуру в массив и во флеш-память. Результат АЦП тогда просто указывает на элемент массива из которого надо вычитать температуру.
Реклама
binarick
Первый раз сказал Мяу!
Сообщения: 36
Зарегистрирован: Пт фев 27, 2015 17:48:39

Re: Резистивные датчики температуры

Сообщение binarick »

Вообще для себя хотел ну потом может ещё неск устройств соберу.

Да табличка немаленькая получится.
Неужели разброс так велик что для каждого датчика?

А насколько работоспособна такая схемка получится Датчик Pt100 + Преобразователи серии Т300/Т200
Пример http://econix.com/catalog/prinadlezhnos ... 00_v-12610

А вообще этот преобразователь вообще из чего состоит что ценник такой?

и ещё вариант нашёл это цифровые конвертеры MAX31855xxxx под разные типы датчиков. Типы подразделяются буквами E,J,K,N,R,S,T пока не разбирался какой именно нужен мне.
Они выдают готовую температуру как я понял по SPI, но если Вы говорите, что датчики врать могут то тогда сомнительно их использование

Вообще мне оч нравится такое решение где я бы не писал код ручками, а получал готовую температуру как у ds18b20.
Аватара пользователя
eess9
Вымогатель припоя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Re: Резистивные датчики температуры

Сообщение eess9 »

binarick писал(а):Да табличка немаленькая получится.
Ее величина будет зависеть от желаемой точности отображения температуры. Если отображать до целых градуса, то будет маленькой; если до десятых градуса, то побольше.
binarick писал(а):Неужели разброс так велик что для каждого датчика?
Для китайских ноунейм с aliexpress, увы да, повторябильность меня и близко не удовлетворила.
Хотя, может быть, мне не повезло с партией :cry:
binarick писал(а):и ещё вариант нашёл это цифровые конвертеры MAX31855xxxx под разные типы датчиков. Типы подразделяются буквами E,J,K,N,R,S,T пока не разбирался какой именно нужен мне.
Они выдают готовую температуру как я понял по SPI, но если Вы говорите, что датчики врать могут то тогда сомнительно их использование
Эта микросхема для термопар, а у вас резистивный датчик. Там в месте спая микровольты и, следовательно, свои проблемы обработки: компенсация холодного спая (можете глянуть в гугле что это такое, если интересно), выходной сигнал с термопары соизмерим со смещением операционного усилителя и т.д. По этому вопросу целые талмуды написаны.
Да и сама термопара подороже будет вашего датчика.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: Резистивные датчики температуры

Сообщение oleg110592 »

подружить платиновые резистивные датчики температуры с микроконтроллером, почитать:
Microchip AN687 Precision Temperature-Sensing With RTD Circuits http://ww1.microchip.com/downloads/en/a ... 00687c.pdf
AN70698 - PSoC® 3 and PSoC 5LP – Temperature Measurement with an RTD http://www.cypress.com/documentation/ap ... rement-rtd
тут исходники есть

без микроконтроллера: http://radiokot.ru/circuit/analog/measure/05/
Реклама
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Резистивные датчики температуры

Сообщение Z_h_e »

Ну не такие уж они и не линейные. 10 битное АЦП наверное больше погрешности даст.

Не вижу никаких проблем измерить температуру с помощью термометра сопротивления. Вопрос больше может стоять в точности.
Лучше всего использовать 4 проводную схему, особенно при удаленном преобразователе. Пускаете стабилизированный ток известного значения через датчик. Измеряете падения напряжения на нем. Считаете сопротивление по закону Ома.
Открываете ГОСТ. Если у Вас буржуйский Pt100, считаете температуру по формулам (1) и (2), если отечественные 100П, то по (3) и (4).
З.Ы. Ток можно не стабилизировать, включить последовательно датчику точный шунт с малым температурным коэфф. и измерять силу тока.
З.З.Ы. Можно не считать по формуле. Вывести зависимость типа Ом/градус. Если для всего диапазона будет слишком грубо, разбить на несколько участков характеристику со своими коэффициентами.
Вложения
gost_r_8.625-2006.pdf
(3.62 МБ) 197 скачиваний
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Реклама
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Резистивные датчики температуры

Сообщение akl »

Z_h_e писал(а):Ток можно не стабилизировать, включить последовательно датчику точный шунт с малым температурным коэфф. и измерять силу тока.
Зачем измерять силу тока? Проще использовать падение напряжения на этом резисторе в качестве опорного. Получающееся ратиометрическое включение, позволяет определять температуру по простейшему выражению.
T=K*(CODEt-CODEref)
СпойлерИзображение
pt100.PNG
В качестве пятничной развлекухи, продолжу для 16-разрядного АЦП AD7798
CODEref(0°C)=65'536*100/200=32'768
CODEt(100°C)=65'536*138.5/200=45'384
K=100/(45'384-32'768)=0,007927
Проверяем для температуры +50°C
CODEt(50°C)=65'536*119.25/200=39'075
T=0.007927*(39075-32768)=49,995589
Проверяем для температуры -50°C
CODEt(-50°C)=65'536*80.75/200=26'460
T=0.007927*(26460-32768)=-50,003516.
Последний раз редактировалось akl Пт ноя 20, 2015 12:33:43, всего редактировалось 1 раз.
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Резистивные датчики температуры

Сообщение Z_h_e »

akl писал(а):Зачем измерять силу тока? Проще...
Но Вы все равно измеряете силу тока по сути :). Я стратегические решения предлагал, Ваша тактика в них вписывается 8).
Согласен, решение хорошее, уменьшает математику и наверное добавляет точности при малых токах.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Резистивные датчики температуры

Сообщение akl »

Нет, ток в таком включении не меряется, но на него накладывается только одно условие - никаких утечек помимо измерительной цепи. Отсюда на потенциальные цепи накладывается условие высокого входного сопротивления. Как правило АЦП преобразовывают по выражению
CODEx=2^N*(Ux/Ur). Полагая ток, проходящий через Rx и Rr одинаковым, выражение можно записать CODEx=2^N*(Rx/Rr).
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Резистивные датчики температуры

Сообщение Z_h_e »

Да отлично я понял работу предложенной Вами схемы. Падение напряжение на шунте, это и есть сила тока и его значение Вы вносите не в математику ядра контроллера,а в математику (физику если угодно) работы АЦП.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Резистивные датчики температуры

Сообщение akl »

Замечу, резистор, используемый в качестве опорного и стоящий последовательно с измеряемым сопротивлением - это не шунт.
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Резистивные датчики температуры

Сообщение Z_h_e »

akl писал(а):... последовательно с измеряемым сопротивлением - это не шунт.
Но для контроллера он шунт.
Изображение
СпойлерRш -шунт. Rд- добавочное сопротивление
Изображение
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Demiurg
Это не хвост, это антенна
Сообщения: 1480
Зарегистрирован: Ср июн 25, 2008 15:19:44
Контактная информация:

Re: Резистивные датчики температуры

Сообщение Demiurg »

Ссылка. Нужную микросхему, на нужное кол-во каналов термодатчиков сам ищи.
Аватара пользователя
eess9
Вымогатель припоя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Re: Резистивные датчики температуры

Сообщение eess9 »

Demiurg писал(а):Нужную микросхему, на нужное кол-во каналов термодатчиков сам ищи.
Стесняюсь спросить, а нахрена? Да, АЦП у AVR хреновенький, но для такой задачи его более чем достаточно.
А внешний АЦП - это удорожание платы.
Мое мнение: толку от него для этой конкретной задачи никакого.
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Резистивные датчики температуры

Сообщение akl »

Без дополнительного усилителя на 10 разрядном АЦП конкретно для Pt100 разрешение в 1°C не получить.
Аватара пользователя
eess9
Вымогатель припоя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Re: Резистивные датчики температуры

Сообщение eess9 »

Сделать больше 10-ти разрядов, но программно? http://www.atmel.com/images/doc8003.pdf
Да и хороший ОУ стоит дешевле хорошего АЦП. Так что чем увеличивать разрешающую способность АЦП, может лучше усилить измеряемый сигнал?
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Резистивные датчики температуры

Сообщение akl »

eess9 писал(а): Так что чем увеличивать разрешающую способность АЦП, может лучше усилить измеряемый сигнал?
Конечно можно усилить. Хотелось бы увидеть эту чудо-схему в студию.
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: Резистивные датчики температуры

Сообщение Z_h_e »

А что тут чудосхемного? Нужно Вам например измерять температуру от 0 до 150гр. Собираете схему на ОУ так чтобы на выходе при 100 Ом было 0 В, а при 158,22 Ом (это для 100П) выход равный опорному напряжению. Т.е. как раз на весь диапазон АЦП.

З.Ы. Вот на кой ляд я помню что при 150 гр. сопротивление 158,22 Ома и не помню куда положил ключи??? :shock:
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Резистивные датчики температуры

Сообщение akl »

Во-во! Как раз такую схему на одном ОУ для измерения температуры термометром сопротивления Pt100 (ладно, так и быть допускается 100П) и хотелось бы увидеть. :solder:
Аватара пользователя
eess9
Вымогатель припоя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Re: Резистивные датчики температуры

Сообщение eess9 »

akl писал(а):Как раз такую схему на одном ОУ для измерения температуры термометром сопротивления Pt100 (ладно, так и быть допускается 100П) и хотелось бы увидеть.
Например, вот:
http://www.platan.ru/shem/pdf/12_p12-13.pdf
далее, контроллер уже самим надо прикручивать
Ответить

Вернуться в «AVR»