Для измерения высоких температур обычные датчики, такие как DS18B20, термистор – не подойдут. Высокие температуры можно измерять с помощью термопары. Но как ее подключить к Arduino? Для решения данной проблемы есть недорогой модуль max6675 который позволяет преобразовать аналоговый сигнал в цифровой. Полученное цифровое значение считывает Arduino, таким образом, мы получаем показание с термопары К-типа. А сейчас подробно разберемся, что такое термопара К-типа и как подключить модуль max6675 к Arduino.
Что такое термопар. Характеристики термопары K-типа.
Термопара – это термоэлектрическое устройство замкнутой цепи, чувствительное к температуре, которое состоит из двух проводников, выполненных из разнородных металлов. Электрический ток создается, когда температура на одном конце или спае, отличается от температуры на другом конце. Это явление носит название эффект Зеебека, который является основой измерения температуры с помощью термопар.
Существует много типов термопар, в которых используются различные сочетания металлов. Эти сочетания имеют разные выходные характеристики, которые определяют диапазон температур, в котором можно применять ту или иную термопару, и соответствующий выходной сигнал напряжения.
Термопары K-типа (хромель – алюмель).
Хромель (Chromel) – это сплав, состоящий на 90% из никеля и на 10% из хрома, а Алюмель (Alumel) – это сплав, содержащий 95% никеля, 2% марганца, 2% алюминия и 1% кремния. Термоэлектрод из сплава Chromel имеет положительный потенциал относительно термоэлектрода из сплава Alumel.
Это недорогие термопары, их диапазон измеряемых температур составляет от -270°C до +1372°C и характеристика относительно линейна. Такие термопары можно использовать в постоянно окислительных или нейтральных средах.
Корпус термопары, который используется в нашем примере, рассчитан на температуру до 600 °C, значит и измерения необходимо производить в диапазоне от 0 до 600 °С.
Описание модуля max6675.
Модуль преобразователя MAX6675 поставляется как вместе с термопарой, так и отдельно. Немного расскажу о самом модуле, на котором установлена одна микросхема MAX6675ISA фирмы Maxim Integrated Products конденсатор и пару разъемов. Микросхема имеет 12 битный АЦП, SPI интерфейс и точность микросхемы 0,25°C (это точность самой микросхемы, у термопары точность другая). Если необходима более подробная информация о микросхеме MAX6675, можете воспользоваться документаций, скачать можно внизу статьи.
Характеристики модуля max6675:
- Тип преобразователя: аналогово-цифровой (АЦП) с компенсацией холодного спая;
- Разрядность преобразователя: 12 бит;
- Шаг измерения: 0,25°C;
- Точность: 1,5°C;
- Интерфейс подключения к контроллеру: SPI;
- Напряжение питания: 3 – 5,5 В постоянного тока;
- Габариты модуля: 32 x 15 x 14 мм;
- Тип термопары: К (хромель-алюмелевая);
- Диапазон измеряемой температуры: 0 – +600°С;
- Диаметр резьбы термопары: 6 мм;
- Длина резьбы термопары: 13 мм;
- Длина кабеля термопары: 50 см;
- Вес комплекта: 25 г.
Для подключения модуля MAX6675 к микроконтроллеру используется интерфейс SPI, для этого на модуле выведен пяти контактный разъем, назначение каждого вывода приведено ниже.
Назначение контактов:
- GND – «-» , питание модуля;
- VCC – «+», питание модуля;
- SCK –тактовые импульсы;
- CS – вывод интерфейс SPI;
- SO – вывод интерфейс SPI.
MAX6675 подключение к Arduino.
Для урока понадодиться:
Схема подключения MAX6675 к Arduino UNO.
Подключаем питание, выводы VCC и GND (модуля MAX6675) подключаем к выводам +5В и GND (Arduino). Теперь можно подключить интерфейс ISP, для этого выводы SCK, CS, SO (модуля MAX6675), подключаем к выводам 2, 3, 4 (Arduino).
Установка библиотеки MAX6675.
Для работы с модулем необходимо установить библиотеку MAX6675. Для этого запускаем программу Arduino IDE и выбираем «Скетч -> Подключить библиотеку -> Управлять библиотеками…»
В открывшемся окне ищем «MAX6675» и устанавливаем библиотеку. Сейчас можно приступить к коду для Arduino.
Скетч MAX6675 + Arduino считывания показаний с термопары и вывод значений в монитор порта.
Данный пример кода просто считывает показание с термопары и выводит значение в монитор порта.
// Подключаем библиотеку
#include "max6675.h"
int thermoDO = 4; // Указываем к какому пину подключен SO
int thermoCS = 5; // Указываем к какому пину подключен CS
int thermoCLK = 6; // Указываем к какому пину подключен SCK
MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);
void setup() {
Serial.begin(9600); // Открытие последовательного порта на скорости 9600
Serial.println("MAX6675 test");
// Отправка текста
delay(500);
}
void loop() {
Serial.print("C = "); // Отправка текста в последовательный порт
Serial.println(thermocouple.readCelsius()); // Чтение и отправка температуры в последовательный пор
delay(1000);
}
Вот такое значения температуры с термопары мы увидим в мониторе порта.
В данном уроке мы рассмотрели основы работы с термопарой и модулем MAX6675. У меня есть несколько реализованных проектов с использованием термопары, вот один из нихАвтоматизация вакуумного пресса на Arduino и дисплее Nextion.
В следующих Arduino Уроках рассмотрим, как автоматически регулировать температуру с помощью IRF520 MOSFET.
Появились вопросы или предложения, не стесняйся, пиши в комментарии!
Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.
Всем Пока-Пока.
И до встречи в следующем уроке.
Понравилась статья? Поделитесь ею с друзьями:
Файлы для скачивания
|
Скетч MAX6675 + Arduino считывания показаний с термопары и вывод значений в монитор порта.ino | 1 Kb | 876 |
Скачать
Вы можете скачать файл.
|
|
max6675 datasheet.pdf | 513 Kb | 790 |
Скачать
Вы можете скачать файл.
|
Комментарии
Войдите или Зарегистрируйтесь И Вы сможете общаться на форуме и оставлять комментарии без капчи.