Друзья, всем привет!)
Хотел бы поделиться очередной разработанной платой преобразователя температуры с датчика PT100 (3-проводное подключение).
Плата получилась стабильная (это самый лучший результат, который мне удалось получить из своих опытов), но сэкономить не получилось. Виной всему резисторы с низким ТКС. Если хотите стабильности при использовании устройства и в холоде и в жаре, то нужно всю плату делать на резисторах с низким ТКС. В моем случае 25ppm. Их сложно достать, да и стоят они, как правило, очень дорого...Вроде бы хотел сэкономить на специализированной микросхеме или внешнем АЦП, а нет...
Питается плата от 5 вольт.
На выходе мы получаем 3 напряжения:
- Опорное напряжение 2.5В
- Напряжение с прецизионного опорного резистора 220 Ом(в идеале нужно180-200 Ом), чтоб при заданном усилении не превысить 3.3 в
- Напряжение с датчика PT100
Суть схемы или как я добился температурной компенсации:
Мы получаем напряжение с прецизионного опорного резистора в 220 Ом - это максимальное сопротивление нашего датчика PT100, которое мы хотим измерить.
Так же мы получаем напряжение с датчика PT100. Мы предполагаем, что сопротивление будет изменяться от 0 Ом до опорного значения(180-220 Ом).
Суть температурной компенсации: мы делаем отношение напряжения с датчика PT100 к напряжению с опорного резистора.
При изменении температуры платы, как ни крути, у нас оба значения поплывут в + или -, но, в теории, поплывут они одинаково, что не изменит результат деления первого значения на второе.
Разбор схемы:
В схеме нам понадобится источник тока и источник опорного напряжения. [Смотреть полную схему]
Далее мы этот ток пропуcкаем через опорный прецизионный резистор 220 Ом и сам датчик PT100. Т.е. ток через резисторы будет протекать всегда один и тот же.
R1 на схеме - это наш опорный резистор. Лучше конечно 180-200 Ом использовать. Но я такой не нашел в магазинах. Поэтому на этапе отладки параллельно R1 припаял 2 кОм.
J1 - это подключение PT100, где 1-2 - это одна сторона сопротивления, 3 - это противоположная сторона сопротивления.
Теперь мы должны снять напряжение с резисторов.
В случае с опорным резистором - воспользуемся схемой дифференциального усилителя на ОУ с единичным коэффициентом усиления.
В случае с 3-проводной схемой PT100 - воспользуемся схемой компенсации.
Вольтметр «A» измеряет сумму напряжений на RTD и на нижнем по схеме токоподводящем проводе. Вольтметр «B» измеряет падение напряжения только на верхнем по схеме проводе. Если оба провода будут иметь одинаковое сопротивление, то разница показаний вольтметра «А» и вольтметра «B» дадут падение напряжения на датчике RTD:
VRTD = Vmeter(A) − Vmeter(B)
Если сопротивления двух соединительных проводов точно идентичны (включая электрическое сопротивление любых соединений в контуре измерений), то рассчитанное напряжение будет точно соответствовать напряжению на датчике RTD, и ошибки за счет паразитного сопротивления соединительных проводов не будет. Но любая разница в сопротивлении проводов тут же скажется на точности измерений. Таким образом, мы видим, что схема RTD с тремя соединительными проводами уменьшает стоимость соединения (за счет экономии кабельной продукции по отношению к четырех проводной схеме соединений), однако применение данной схемы соединений, отрицательно сказывается на точности измерений.
Нужно понимать, что в реальном применении RTD с трехпроводной схемой соединений показывающие вольтметры не используются. На практике, при использовании RTD применяются аналоговые или цифровые схемы, которые определяют величины напряжений и выполняют необходимые расчеты, чтобы компенсировать падение напряжения на сопротивлении соединительных проводов. Вольтметры, показанные на схемах трех- и с четырехпроводных схемах, служат только для того, чтобы иллюстрировать фундаментальные понятия, а не демонстрировать практические схемотехнические решения. Практическая электронная схема для трехпроводной схемы подключения RTD показана на следующем рисунке:
Необходимо еще раз подчеркнуть фундаментальное ограничение любой трехпроводной цепи: компенсация сопротивления проводов возможна настолько, насколько точно сопротивления соединительных сигнальных проводов равны друг другу. Это накладывает ограничение на применяемый кабель. Обычно для подключения RTD используются инструментальные кабели, специально разработанные для данных целей.
По итогу имеем следующее:
Итак. Напряжение на опорном резисторе мы рассчитали. Напряжение с датчика PT100 рассчитали. Осталось усилить данные сигналы при помощи не инвертирующих усилителей на ОУ.
Это самое ответственное место. Оба сигнала должны усиливаться одинаково, При изменении температуры платы, оба усилителя должны плыть тоже одинаково, иначе мы получим мультипликативную погрешность, что испортит нам все измерения.
Плата:
Отладка:
Подключаем плату к АЦП микроконтроллера.
Подключаем вместо датчика магазин сопротивлений.
Считаем отношение ADC_VAL/ADC_REF при 100 Ом и при 180 Ом. Рассчитываем уравнение прямой(Зависимость отношения к измеренному сопротивлению).
Для преобразования сопротивления в температуру опять же можете воспользоваться моими наработками.
Для примера приложу тесты стабильности при изменении температуры платы. Сравним с заводским решением от Maxim Integrated:
MAX31865 - Отличнейший результат. Опорный резистор прецизионный.
Разработанная плата - Тоже хороший результат. Резисторы все прецизионные. Если не брать в учет, что резисторы с низким ТКС труднодоступные, то мы обошлись дешевыми ОУ, дешевым источником опорного напряжения и пользовались встроенным АЦП МК.
Пробовал еще плату собрать на обычных резисторах, чтоб было максимально дешево и доступно. В источнике тока поставил резисторы номиналом 10к вместо 20к, что отрицательно сказалось на стабильности источника тока при изменении нагрузки, но это ладно. Подключил магазин сопротивления. Выставил 100 Ом. Результат теста температурной стабильности платы получился невпечатляющим. Измерения могли улететь на 0.20-0.30 Ом, а это уже около 1°С.
Итого:
Подведя итог, хочу сказать, что нужно думать дальше, чтоб решение было более доступно, но при такой же точности и стабильности, а может даже лучше.
Чем меньше мы будем усиливать сигнал в разных местах, тем стабильнее будет результат. Можно взять АЦП, у которого на Vref можно подключить очень низкое напряжение (А они тоже дорогие и труднодоступные в данных реалиях).
Тогда на Vref+ и Vref- подадим напряжение с опорного резистора (примерно 220 мВ).
Проблема с усилением сигнала отпадет, да и отношение считать уже не нужно будет. Задача сузится до измерения напряжения после компенсации датчика и измерять будем напряжение от 0 до 220 мВ.
Еще источник тока можно увеличить до 5 мА, но подавать его не постоянно, а порционно, чтоб не вызывать нагрева датчика PT100. Тогда напряжения чуть-чуть вырастут и мы получим, наверное, повышенную помехоустойчивость.