MAX6675

О термопарах и цифровом преобазователе MAX6675

Термопары и ошибка показаний цифрового преобразователя max6675

Сначала коротко: Для связки из термопары тип К, max6675 и библиотеки adafruit max6675.h для Arduino я просто отнимаю от показаний термопары 10 градусов и получаю относительно точные значения температуры.

Теперь подробно.

Разъясню про «холодный спай» и его компенсацию. Термопара не градусник, и она не дает значения температуры, она показывает разницу между температурой капли спая и температурой кончиков электродов. Это значит, что при комнатной температуре показание термопары будет равно 0. «Компенсация холодного спая» — это уточнение температуры холодных концов термопары любым сторонним датчиком, чтобы прибавлять его к показанию термопары. И в max6675 такой датчик уже есть.

Однако! Датчик внутри MAX6675 врет . Точнее, все мои китайского происхождения микросхемы max6675 купленные в разных магазинах одинакого ошибались в показаниях на 6 градусов.
Однако! Если термопара и ее холодные концы находятся при другой температуре, нежели max6675, то показания внутреннего датчика будут несовпадать с температурой холодных концов термопары. Исключение составляют термопары, подключенные к микросхеме специальным термокомпенсационным проводом. Такое соединение можно условно считать «цельной термопарой с длинющими электродами». Часто термокомпенсационный провод сделан из тех же материалов, что и сама термопара.

Итак, чтобы получить более-менее точные показания необходимо провести калибровку данных, получаемых с микросхемы.

1. Температура холодного спая (датчик внутри микосхемы max6675) дает ошибку в 4-10 градусов. Замкните контакты подключения термопары простым медным проводом, и вы получите значение «комнатной» температуры внутри микросхемы. Сравните показание с любым прибором, которому вы доверяете.

2. Термопары все уникальны, кроме повереных в метрологической службе. Потому необходимо провести уточнение ошибки для конкретной термопары на гарантированных значениях температуры. Первая гарантированная температура — температура человеческого тела 36,6С. Вторая гарантированная температура — кипящая дистиллированая вода 100С. Третья гарантированная температура — тающий лед дистиллированой воды 0С. И четвертая гарантированная температура — комнатная температура, если у вас есть точный градусник. Мои опыты показали, что получить совпадение на всех точках не удается. И потому приходится выбирать поправку к показаниям термопары применительно к конкрентому интервалу рабочих температур.

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

Замечу еще, что связка из термопары тип K, цифрового преобразователя max6675 и библиотеки для arduino adafruit max6675.h дают случайный разброс показаний в пределах +/- 2 градуса на статичной температуре. Потому использование дистиллированной воды не даст улучшения точности калибровки. Водопроводная вода тоже сойдет. 

А главное, высокой точности от этого прибора ожидать не стоит в принципе. На температурах близких к 1000градусов, допустимая погрешность термопары составляет +/-15° С, а на температурах ниже 300°С погрешность составляет +/-2С, и это без учета ошибки преобразователя!
И еще пара наблюдений:

если электроды соприкасаются только в точке спая, то нагрев среднего участка электродов (не спай и не концы) не влияет на показания.

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

Добавить комментарий