Подключение max6675: Обзор модуля преобразователя термопары на MAX6675 – RobotChip
|Содержание
АЦП MAX6675 для термопары Е-типа
Каталог товаров
- Ориентации
- Влажности
- Температуры
- Давления
- Объема
- Расстояния
- Слежения
- Напряжения и тока
- Уровня воды
- Газов
- Веса
- Холла
- Цвета и света
- Движения
- Касания
- Обнаружения
- Звука
Предыдущий
Следующий
Цена:
380 р.
менее 50 шт.
Уже в корзине
Код товара:
12996
Описание товара
Модуль аналогово-цифрового рпеобразователя на MAX6675 для согласования термопары Е типа.
Характеристики:
- Прямое 12-битное цифровое преобразование выхода термопары типа Е (ТХКн, хромель-константан, чувствительность 68 мкВ/°C)
- Напряжение питания: 3…5.5 вольт
- Потребляемая сила тока: 1,5 мА
- Диапазон измеряемых температур: 0…400°С
- Разрешение преобразования: 0,25 °C
- Компенсация холодного спая ±3 °С
- Простой последовательный интерфейс, совместимый с SPI.
- Точность преобразования:
- ±8 LBS при температуре 0-700 °С
- ±17 LBS при температуре 700-1200 °С
- Обнаружение обрыва термопары
В качестве интерфейса связи используется собственных интерфейс, совместимый с SPI. Протокол связи подразумевает получение двух восьмибитных значений.
Биты D15, D1 и D0 не несут полезной информации. Данные о температуре содержатся в битах D3-D14. Бит D2 содержит данные о доступности или обрыве термопары: в случае обрыва или отключения термопары бит D2 содержит значение 1.
Таким образом алгоритм работы с MAX6675 следующий:
- получить 8 бит информации
- сдвинуть полученые 8 бит информации влево на 8
- получить следующие 8 бит информации (таким образом получаем 16-битное значение)
- проверить значение бита D2, если D2==1, то термопара отключена, если D2==0 — переходим к следующему шагу
- сдвинуть полученное 16-битное значение вправо на 3
- умножить полученное значение на 0,25 (в качестве результата — температура в градусах по шкале Цельсия)
Подключение осуществляется по следующей схеме:
Datasheet (pdf, en)
Похожие позиции
Китайский модуль max6675 с термопарой
Для одного из проектов потребовались термопары. Заказаны они были на алиэкспресс, а полученный результат стоит того, что бы им поделиться. Промежуточный вывод – применять подобные модули без переделки нельзя!
Термопары для контроля температуры в продукте (колбаса, мясо)
Модуль термопары + плата с чипом max6675
Взять подобный модуль можно здесь.
Модуль на max6675 имеет 12-битный АЦП, с микроконтроллером общается по SPI с максимальной скоростью (согласно datasheet) 4 мегагерца, хотя у меня работал и на 8. Шаг температуры составляет 0.25С°.
Описывать его более подробно не вижу смысла, информации по нему достаточно. Выбран он из-за невысокой цены и доступности. Пожалуй это самый дешевый чип подобного плана. Более дорогие микросхемы для измерения температуры не рекомендуется брать в Китае, т.к. в сети есть информация что с высокой степенью вероятности пришлют подделку.
После подключению к микроконтроллеру попытался нагревать термопару горелкой, и получил странный эффект – температура нарастала очень медленно. По ощущениям, показания не дисплее не имели ничего общего с реальной температурой термопары нагретой газовой горелкой.
Подозрение вызвала сама конструкция термопары, решил вскрыть ее дремелем но возникла идея что столь светлая мысль уже пришла кому-то в голову. Буквально за несколько минут на ютубе был найден видеоролик. С помощью невыносимого усилия воли я посмотрел его целиком.
На фото видно две вскрытых термопары. В одной виден сам шарик спая находящийся близко к окончанию корпуса, про вторую автор говорит что шарик находится ближе к началу. Выходит что моё предположение о некачественной сборке полностью подтвердилось!
Китайцы засовывают провод с шариком в корпус как попало, наполнителя никакого нет и шарик может даже не касаться корпуса, но даже если и касается – этого совершенно недостаточно для точного измерения, т.к. место касания настолько мало, что корпус не сможет полностью передать свою температуру за разумное время.
Теоретически подобная конструкция работать может, но будет иметь просто огромную инерцию. Практически же такое применять нельзя, или же я не смог придумать где можно.
В качестве демонстрации сделал сравнение китайской конструкции и термопары от мультиметра без корпуса. Температура термофена в обоих случаях одинакова, а вот эффект получается разный.
Термопара от мультиметра, без корпуса
- Набор температуры до ~200 градусов за ~7 секунд;
Китайская термопара в корпусе
- Набор температуры до ~185 градусов за ~120 секунд;
Дальше я просто устал ждать. Разница между 7 и 120 секунд очевидна, плюс отлично видна динамика показаний. На дисплее следует смотреть на первую цифру отображающую температуру в градусах Цельсия.
Для себя сделал вывод что термопару в подобном корпусе применять нельзя, остальные два типа (выше на фото) проверю позже, результат сообщу.
Please enable JavaScript to view the comments powered by Disqus.
Простой 3-проводной интерфейс АЦП термопары MAX6675 Arduino
Базовая схема термопары использует тепло на соединении
двух разных металлов, создавая небольшое напряжение.
Льюис Лофлин
Предупреждение: температура, используемая в этом проекте, может вызвать ожоги — будьте осторожны.
Подробнее:
10 марта 2015 г.
В этом проекте мы будем соединять K-термопару с компенсацией холодного спая MAX6675.
to-Digital Converter в микроконтроллер Arduino. Термопары типа K недороги и достаточно точны. Здесь мы имеем диапазон температур 0 град. С до 1024 град. С.
В этом диапазоне температур можно измерить расплавленный свинец или цинк, дымовые газы в трубе дровяной печи и т. д. Это может измерить кулинарное масло во фритюрнице или температуру в духовке, когда мы печем пирог.
Это намного больше, чем мы могли бы сделать с твердотельными датчиками, такими как TMP37 или термисторы.
MAX6675 выполняет компенсацию холодного спая и
оцифровывает сигнал термопары типа К.
данные выводятся в 12-битном разрешении, SPI-совместимом,
формат только для чтения.
MAX6675 доступен в небольшом 8-контактном корпусе SO (для поверхностного монтажа).
См. также Сборка усилителя напряжения термопары
Простой 3-проводной интерфейс SPI между MAX6675 и Arduino.
Выше показано 3-проводное соединение между MAX6675 K-термопарой с компенсацией холодного спая и
в цифровой преобразователь и Arduino. Это устройство только для чтения с 12-битным выходом (всего 16 битов) с первым битом 15 (MSB).
Бит 15 является битом фиктивного знака и отбрасывается. Биты 14-3 представляют собой фактическое показание температуры, бит 2 обычно равен 0, но если датчик не подключен, равен 1. Полезно для определения того, подключен ли датчик. Биты 0 и 1 отбрасываются.
В Интернете есть несколько «библиотек» для Arduino, чтобы читать MAX6675, но для меня это беспорядок — я написал свой собственный более портативный код, который может использовать каждый. В подпрограмме spiRead() код работает следующим образом:
Мы объявляем переменную «value» как целое число и устанавливаем ее в ноль. Целочисленная переменная в Arduino является 16-битной.
CS принимает НИЗКИЙ уровень в течение 2 мс. затем ВЫСОКИЙ, чтобы начать процесс преобразования. Делаем задержку 200 мсек. для завершения процесса.
CS снова принимает НИЗКИЙ уровень для чтения данных. Один цикл CLK от LOW до HIGH и далее LOW сбрасывает бит 15.
Затем мы используем цикл for для извлечения следующих 15 битов (14-0), которые хранятся в переменной value.
Затем мы проверяем бит 2, чтобы убедиться, что датчик подключен. 1 означает отсутствие датчика, а в основную программу возвращается значение -1.
Если бит 2 равен 0, все в порядке, «значение» сдвигается вправо на три позиции и в основную программу возвращается целочисленное значение по шкале Цельсия.
Назад в «цикл», если -1 возвращается к переменной v, генерируется сообщение «Нет датчика». В противном случае v умножается на 0,25, чтобы получить температуру в градусах Цельсия, которая преобразуется в градусы Фаренгейта, а затем отображается на последовательном мониторе или на ЖК-дисплее.
Код Arduino: therc.txt
MAX6675 Усилитель тепловой пары
с датчиком типа K.
- Arduino и Raspberry Pi
- Преобразование Arduino PWM в аналоговый
- Вольтметр аналогово-цифрового преобразования Arduino
- Лучший датчик поворотного энкодера Arduino
- Простой 3-проводной интерфейс MAX6675 АЦП для термопары Arduino
- Raspberry Pi и датчик термопары MAX6675
- Быстрая навигация по этому сайту:
- Базовое обучение электронике и проекты
- Основные проекты твердотельных компонентов
- Проекты микроконтроллеров Arduino
- Электроника Raspberry Pi, программирование
- Цифровые схемы:
- Простой триггер Шмитта SN74HC14 Генератор прямоугольных импульсов
- Введение в схемы RC-дифференциаторов и их использование
- SN74HC14 использует SN7476 JK Flip-Flop
- SN74C14 Цепь генератора импульсов с тремя выходами
- Нестабильный блок питания счетчика Гейгера CD4047
- CD4047 Схема моностабильного мультивибратора
- Примеры базовой схемы буфера с тремя состояниями TTL
- Учебное пособие NOR Gate SR Latch Circuits
- Учебное пособие NAND Gate SR Latch Circuit
- Учебное пособие по схемам ИЛИ-НЕ, включая моностабильный мультивибратор
- Краткое руководство по логическим элементам XOR и XNOR
- LM555-NE555 Однотактный мультивибратор Регулятор мощности переменного тока
- YouTube:
- Генератор цифровых импульсов с тремя выходами
Генератор прямоугольных импульсов
- Цифровые схемы:
- Двухтранзисторная схема мигающего светодиода
- Нестабильный блок питания счетчика Гейгера CD4047
- CD4047 Схема моностабильного мультивибратора
- Примеры базовой схемы буфера с тремя состояниями TTL
- Учебное пособие NOR Gate SR Latch Circuits
- Учебное пособие NAND Gate SR Latch Circuit
- Катушки для высокоселективного кристаллического радиоприемника
- Неоновые (NE-2) схемы, которые можно собрать
- Общие сведения о ксеноновых импульсных лампах и схемах
Веб-сайт Copyright Lewis Loflin, Все права защищены.
Если вы используете этот материал на другом сайте, предоставьте ссылку на мой сайт.
При попытке подключить MAX6675 к D1 mini датчик получил «недопустимое значение» — ESPHome
fribse
(Кеннетс Текник)
#1
Глядя на документы, в примере написано:
шпи: мисо_пин: D0 clk_pin: D1 датчик: - платформа: max6675 Название: "Температура в гостиной" cs_pin: D2 update_interval: 60 сек.
Отсюда нужно три контакта кроме 3.3v и земли.
MISO
CLK
CS
Глядя на распиновку D1 mini:
image715×362 72 КБ
Думаю, CLK — это SLCK?
Я сделал свой конфиг следующим образом:
esphome: ... платформа: ESP8266 плата: esp8285 . .. спи: мисо_пин: GPIO12 clk_pin: GPIO14 датчик: - платформа: max6675 название: "Температура Раклетта" cs_pin: GPIO15 update_interval: 30 с
Но это дает мне следующее:
[W][max6675:040]: получено неверное значение от MAX6675Sensor (0xFFFF)
Пожалуйста, помогите мне с некоторыми идеями…
tom_l
#2
Это не похоже на правильное определение платы для Wemos D1 mini.
эсфорома: ... платформа: ESP8266 плата: esp8285
Я использую:
esphome: имя: что угодно платформа: ESP8266 доска: d1_mini
Кроме того, к каким контактам вы подключили плату датчиков, как указано на плате (D1 — D8)?
1 Нравится
(Кеннетс Текник)
#3
Привет, Том
Ах, да, я не могу найти определения типа платы, поэтому я немного слеп. Я поправил, но без изменений.
Я ввел это в код
MISO: GPIO12
CLK: GPIO14
CS: GPIO15
Я также пробовал
MISO: D6
CLK: D5
CS: D8
Но это дало мне тот же результат
tom_l
#4
Определения платы находятся здесь (ESP8266) и здесь (ESP32). Добавьте их в закладки. Нажав на тип доски, вы попадете на страницу с определениями.
Я вижу, какие контакты вы использовали в коде, я хотел убедиться, что вы физически подключены к правильным контактам. Поэтому я хотел, чтобы номера «D» на плате соответствовали номерам GPIO, которые у вас были в коде.
Если вы подключены к этим:
MISO: D6
CLK: D5
CS: D8
Тогда все в порядке.
MAX6675 работает от 3 до 5 В, поэтому питание от 3,3 В не проблема (не используйте 5 В, вам нужна логика 3,3 В на других выводах).
Так что у меня нет идей. Извини.
РЕДАКТИРОВАТЬ: термопара подключена?
1 Нравится
(Кеннетс Текник)
#5
Ok, darned
This is what is built at the moment…
DSC_01015504×3096 2.48 MB
DSC_01025504×3096 1.69 MB
DSC_01031548×2752 864 KB
fribse
(Кеннетс Текник)